A Palestinian gunman opened fire in downtown Jewish West Jerusalem today, wounding at least 29 people during the evening rush hour before police shot him dead, police and rescue services said.

"I was inside a store...and he got out of a taxi right near the entrance and began to shoot," a witness told Army Radio at the scene of the attack on Jaffa Road, near a pedestrian mall that has been the target of suicide bombings.

The attack occurred hours after Israeli troops killed four Hamas members in a raid in the West Bank city of Nablus and the militant group vowed to avenge their deaths.

The new wave of bloodshed added to the challenges U.S. Middle East envoy Anthony Zinni will have to tackle on his still-unscheduled return to the region he left on January 6.

"Fifteen people were shot and wounded, five of them seriously," a spokesman for the Magen David Adom ambulance service said.

Jerusalem police chief Mickey Levy said a lone Palestinian gunman opened fire at people waiting at a bus stop.

"He tried to run away. After a short chase of about 15 metres (police) succeeded in killing him," he told reporters.

Inside a bloodstained pharmacy, customers hid in a storage closet when the carnage began.

"He fired inside the store or next to it," its owner said. "That storage closet saved my life."

There was no immediate claim of responsibility for the shooting, which came five days after a gunman killed six people at a Jewish girl's bat mitzva, or coming-of-age party, in the northern Israeli city of Hadera.

Israel has been on high alert for Palestinian attacks in its cities since a bomb blast which Palestinians blamed on Israel killed a leader of the militant Al-Aqsa Martyrs Brigades in the West Bank last week.

The Brigades, linked to Palestinian President Yasser Arafat's Fatah faction, have since killed nine people in revenge and vowed to continue a campaign of retribution.