Swans tall Hayden McLean was awarded a free kick and 50-metre penalty for the Kangaroos' error and converted from point-blank range to seal his side's 14.9 (93) to 14.6 (90) win at Marvel Stadium on Saturday.

Sydney's triumph snapped a four-match losing streak, improving its record to 4-6, but came at a cost with ruckman Peter Ladhams added to a long injury list.

Ladhams sustained what the Swans termed a "severe ankle injury" when he landed awkwardly at a centre bounce ruck contest.

Play was held up for several minutes before Ladhams, who had just returned from an arm injury, was driven off the field moments before three-quarter time.

The Swans led by 15 points at that stage but coughed up the next five goals and looked gone before goals to Errol Gulden and Isaac Heeney dragged them back into the contest.

Sydney coach John Longmire said he had "no idea" what was happening when McLean put them back in front with the final goal of the game.

"We genuinely didn't know what the free kick and 50 was paid for," Longmire said.

"It wasn't until afterwards, someone told me after the siren had gone."

04:24

Swans co-captain Luke Parker was huge for his side with 27 disposals, six clearances and a goal despite twice being forced off under the blood rule.

Chad Warner tallied 31 disposals, seven clearances and a goal, and Lance Franklin finished with three majors in a welcome return to form.

Franklin pushed up the ground late in the contest in an effort to win the match for his side.

"He just took it on himself ... I thought his last quarter and last 10 minutes were pretty good," Longmire said.

"I think he got beaten in one marking contest but he went up the ground and wanted to win the game and get the ball in our front half, and he competed really hard.

"You can just tell he's a competitor and he jumped right up like he has done for many years."

ALL THE HIGHLIGHTS