They got their reward in the 73rd minute when substitute Federico Fernandez fouled Vucinic inside the area and Vidal converted the penalty.
The game opened up and the tension increased, so much so that Pandev vented his anger at a linesman and was swiftly sent off.
Zuniga followed him into the dressing room in stoppage time when he picked up a second yellow card for a foul on Giovinco.
It was all too much for Mazzarri, who was sent off for his protests as the teams prepared for extra time.
Napoli could no longer control their emotions and Juve capitalised to take the lead seven minutes into extra time when Maggio headed Andrea Pirlo's free-kick into his own goal before Juve sealed victory through Vucinic in the 101st minute of the game.