It happened on the 1100 block of Kater Street on Thursday night.
Police say the victim was in a car with three other people, including a child under the age of 10, when 40 shots were fired. The vehicle was hit at least 15 times, according to investigators.
The teen was rushed to the hospital with a gunshot wound to the shoulder. She remains in stable condition.
No other injuries were reported.
Police say two males may have been shooting at each other when the girl was hit by gunfire. No arrests have been made at this time.
Investigators plan to review surveillance video from nearby businesses to track down the suspects.
Anyone with any information is asked to call police at 215-686-TIPS.