Rovers had matched their high-flying opponents for long spells before Hogan Ephraim’s strike two minutes into the second half.
The hosts launched a bold fightback but were unable to find an equaliser that would have helped them edge towards securing second-tier status for another season.
O’Kelly said: “They are running away with the Championship but I think we matched them apart from the opening 10 minutes – and one mistake cost us the game.
“The first goal was always going to be crucial because when they get their noses in front it’s hard to peg them back.
“They know what they’re doing and they shut up shop and did it really well.
“It’s the mark of a very good side and they are so well organised and professional because they have players who have been there and done it.
“But I thought we showed character and spirit and kept going until the end.
“Overall we coped with them very well. There were more pluses than minuses for us – but unfortunately no points.”
QPR manager Neil Warnock was delighted with the win that moves his team another step closer to promotion to the Barclays Premier League.
The London club are now nine points clear at the top of the Championship but Warnock is refusing to take promotion for granted, insisting plenty more work is required.
“We stuck at it today against a good Doncaster side,” he said. “I’d love to win the next five games and wrap it all up but I’m sure there will be a few twists and turns before the end of the season.”
Doncaster Rovers: Gary Woods, Hird, Martis, Friend, Mills, Coppinger, Oster (Mason 67), Stock, Gillett (Dumbuya 84), Moussa, Hayter (Euell 74). Unused substitutes: Sullivan, Wilson, Shiels, Kilgallon.
QPR: Kenny, Orr, Gorkss, Hall, Hill, Smith, Derry, Faurlin, Ephraim (Buzsaky 62), Helguson (Hulse 80), Routledge. Unused substitutes: Cerny, Agyemang, Moen, Chimbonda, Shittu.
Referee: Phil Gibbs (West Midlands). Man of the match: Hogan Ephraim.