Leeds United waved goodbye to their record as the country's only remaining unbeaten side as Millwall's Gary Alexander made a late entrance to secure the points. He replaced Steve Morison up front after an hour, and made his mark when he steered home a cross from Danny Schofield.
Leeds will not be too soured by the defeat as they remain top of the table, but Millwall are emerging as their bogey side. It was the Lions who condemned Leeds to their previous defeat – 15 matches ago in last season's play-off semi-finals.
"There is a rivalry between these sides and they have one over us at the moment," said Simon Grayson, the Leeds manager. "It is disappointing the run has come to an end but we'll see how our players respond against Bristol Rovers. We were never going to win the league after 13 games, but we don't want to come back here this season. That would mean we are in the play-offs, and we want to be promoted automatically."
Whenever these sides meet there is a fear of violence. Thankfully, there was little trouble among an attendance of 14,126, Millwall's highest gate since November 2004. After 21 minutes Casper Ankergren, the Leeds goalkeeper, appeared to have an object thrown in his direction, and two seats were flung on to the field late on from the Leeds end of the stadium.
Neil Harris gave home supporters the perfect start as he steered home a Chris Hackett cross after three minutes for his 10th goal of the campaign.
Leeds soon began to take charge, and an equaliser from Patrick Kisnorbo on 12 minutes was no less than they deserved, as he reacted quickly to thrash home from eight yards.
After half-time, Millwall's Morison and Tony Craig both missed good chances, but the winner arrived on 82 minutes, Alexander netting his first league goal of the season.
"This gives us confidence and it is tight at the top," said Kenny Jackett, whose Millwall side are nine points behind Leeds. "There are some very good sides up there but we must ensure the players do not become over confident."