PHILADELPHIA -- The Devils are feeling right at home on the road.
Andy Greene scored an empty-net goal with 6.7 seconds left for the Devils, who won their fourth straight on the road. New Jersey has lost just once away from home this season.
"It's not easy to do in any league," Devils coach John Hynes said of winning on the road. "But tribute to the guys, they've found ways to win."
Luke Schenn scored for Philadelphia.
"We didn't deserve to win the game," Flyers' Jakub Voracek said. "They were better than us."
Voracek didn't have a point and has just three assists without a goal through nine games. He set a career high with 81 points last season.
"We always leave 100 percent on the ice, (but) we just didn't play good," Voracek said.
Palmieri put the Devils in front at 1:28 into the third period when he blocked Evgeny Medvedev's shot attempt at the blue line, raced past Medvedev and fired a wrister from the left circle over goalie Steve Mason's left shoulder that made it 2-1.
"It was a great effort," Hynes said. "You see a guy make a real hard play, sacrifice his body to block a shot and then winds up scoring the winning goal was nice to see and a great job by him."
Said Palmieri, "I was just trying to put it on net and make him make a save."
Zajac made it a two-score lead just over a minute later with his second power-play goal, beating Mason from the slot with a backhander that again went over the goalie's left shoulder. The Devils had the man advantage after Philadelphia was penalized a second time for having too many men on the ice.
"I've got to communicate better on the bench and that's the bottom line," Flyers coach Dave Hakstol said.
Voracek was more direct.
"There's no excuse for that," he said. "It should happen twice a year, not twice a game."
The Flyers got on the board first with 4:56 left in the second period when Schenn fired the puck toward the net from the right boards and past Cory Schneider, who misplayed what appeared to be a routine save.
New Jersey tied it at 1 when Zajac scored his third goal of the season with about two minutes left in the second period.
Palmieri set up that power-play goal with a deft pass from the left circle between two Flyers defensemen. A wide-open Zajac tapped in a forehand shot into an empty net from just in front of the crease as Mason couldn't get there in time.
"All I had to do was put my stick on the ice," Zajac said.
Veteran Flyers forward Vincent Lecavalier assisted Schenn's goal in his season debut after sitting as a healthy scratch for the club's first eight games. Lecavalier, who has been idle despite 411 career goals and two years left on a five-year, $22.5 million contract, replaced Pierre-Edouard Bellemare (lower body). Bellemare was hurt in Tuesday's overtime loss to Buffalo and is expected to miss two weeks.
Mason made 29 saves. He dropped to 0-7-0 in eight games, seven of which have been starts, against the Devils. New Jersey is the only team Mason hasn't beaten.
"Yeah, I've known that," Mason said. "It's not for a lack of trying. Sometimes things don't go your way."
Schneider had 27 saves.
Flyers C Sean Couturier (upper body) missed his third straight game. ... Philadelphia backup goalie Michal Neuvirth returned to the bench after missing the last two games due to an upper body injury. ... The teams will meet three more times this season. ... The Flyers begin a five-game road trip on Friday night in Buffalo.