Connor Wickham's first goal for Sheffield Wednesday dented Leicester's Championship promotion chances and boosted his own side's survival hopes.
The 19-year-old striker, on loan from Sunderland, fired in a close-range volley as Wednesday secured only their second win in six league matches.
Defeat puts more pressure on Foxes boss Nigel Pearson, whose side have won only one of their last seven league matches.
The Owls are 19th, four points clear of the relegation zone.
The hosts had started brightly, with striker David Nugent forcing an early save from Wednesday goalkeeper Chris Kirkland with a dipping 20-yard shot.
The former Portsmouth striker sent another effort from outside the area wide before the visitors responded with their first chance in the 12th minute, Leroy Lita flashing a header wide.
But Kirkland remained the busier of the two keepers as Ben Marshall and Ritchie De Laet tested him before half-time.
However, when Wickham came off the bench just before the hour mark, the Foxes were made to pay for their wasted opportunities, the former Ipswich striker crashing a close-range volley into the roof of the net from Lewis Buxton's cross to send the hosts to a third defeat in five home league matches.
Leicester manager Nigel Pearson: "I think the biggest thing today was that we looked a side having a bit of a crisis of confidence at the minute.
"I can't fault the players for their efforts, but we were not fluid and didn't solve the problems Wednesday gave us.
"They came with a solid foundation and things didn't quite go our way for a number of reasons. Our creativity is not quite there but I don't think there is a fear factor there."
Wednesday manager Dave Jones: "It shows you how far we have come as a football club because when we played them in November they were far the better team and we had some catching up to do.
"I think we were a bit naive earlier in the season in what we were doing and it took us a little time to adapt. We have lost that naivety and become a bit more solid."
Sorry, we were unable to load match stats, please try again.