Stoke substitute Salif Diao snatched a last-gasp 2-1 triumph for 10-man Stoke as Portsmouth were plunged deeper into Premier League relegation trouble.
Frederic Piquionne gave the home side the advantage after 35 minutes, but Robert Huth's header levelled matters five minutes after the break.
Andy Wilkinson was sent off for the visitors after 73 minutes, but Diao netted at the death to maintain his side's unbeaten record in all competitions this year.
Tony Pulis' team enjoyed the best of the opening exchanges as Pompey failed to fashion any early chances.
Every Rory Delap throw-in drew a chorus of whistles from the home fans and the former Southampton player picked out Huth with one of his trademark missiles from the left touchline after 11 minutes.
The ball fell to Glenn Whelan 25 yards from goal, but he blasted his effort comfortably over the top.
Stoke came much closer when Wilkinson fired a long ball into the heart of the Pompey box.
Ryan Shawcross headed it down, but Mamady Sidibe spun and put a great chance wide of the target after 17 minutes.
Pompey fans had little to cheer early on, but they thought Piquionne had broken the deadlock after 20 minutes.
The striker was adjudged to be offside, though, as he raced on to Quincy Owusu-Abeyie's through ball and slotted home.
Pompey enjoyed more possession as the half progressed and Nadir Belhadj nearly gave them the lead when his right-footed, 20-yard scorcher from the edge of the box just whistled over the bar after 25 minutes.
Owusu-Abeyie's power and pace caused Stoke plenty of problems on the left side and he played a huge part in helping Pompey break the deadlock after 35 minutes.
The on-loan Ghanaian striker played a slick one-two with Jamie O'Hara on the edge of the Stoke box, before unleashing a powerful, low effort.
Potters keeper Thomas Sorensen spilled the ball and Piquionne was first on the scene to punish the Dane and net the rebound.
The home side came out for the second half without their goalscorer, who was replaced by Kanu at the interval.
But Pompey nearly doubled their lead when a quick David James clearance sent Aruna Dindane racing through on goal after 48 minutes.
He took one touch too many, though, and Danny Collins dispossessed him before the Lens-owned man could pull the trigger.
Stoke countered and Ricardo Fuller won a corner, when his strike was blocked by Hermann Hreidarsson.
Whelan took the kick and picked out Huth with a superb ball, which allowed the German to easily out-jump Pompey centre-back Marc Wilson and head powerfully into the top corner after 50 minutes.
Pompey's hopes of claiming their first win of 2010 were given a major boost after 73 minutes, when Stoke had Wilkinson dismissed for a second yellow card.
The right-back scythed down Dindane on the left side of the box after 68 minutes, and a similarly bad tackle on the Ivorian international five minutes later saw referee Mike Dean send Wilkinson down the tunnel.
Fuller was lucky not to join him shortly afterwards, when a ridiculously high challenge on O'Hara went unpunished by the officials.
And the striker made the most of his reprieve, when he skinned Wilson in the box in the first minute of stoppage-time, before squaring for substitute Diao to win the game.
Copyright (c) PA Sport 2009, All Rights Reserved.