Danny Ings scored twice as Burnley took the honours in the top-of-the-table Championship meeting against QPR.
Burnley were the better side in the first half but QPR went close when Junior Hoilett had a shot blocked and Joey Barton sent an effort wide.
However, Ings played a one-two with Sam Vokes and fired past keeper Robert Green to put the hosts ahead.
Ings then scored a penalty after being fouled by Barton to end QPR's unbeaten league record and keep Burnley top.
Danny Ings took his tally to 13 for the season with his double against QPR
Barton was constantly booed by the home side's fans and also appeared to have objects thrown at him during the match.
QPR's misery was compounded as they dropped down to third place after Leicester overtook them into second following a
2-1 win over Bournemouth.
Burnley had started the stronger but there was a bizarre incident after 15 minutes when Clarets mascot Bertie Bee was sent off after an exchange with the linesman.
In terms of goalmouth action, QPR centre-back Clint Hill had to head behind after Kieran Trippier's long range free-kick had been fumbled by Green.
Barton sent a shot just wide before Ings and Vokes combined to allow the former to slot Burnley into the lead.
QPR missed a chance to level when centre-back Richard Dunne headed over from six yards and Ings completed his side's win when he scored from the penalty spot for his 13th goal of the season.
Burnley manager Sean Dyche:
"I'm delighted with the tactical framework of the team, the effervescence of the team but most of all the quality of the team, which I was thought was excellent.
"The first goal was fit to grace most pitches, the pace of it and the quality of the finish.
"I thought we played really well first half and had some good half chances, but I said to the players at half-time that they'd have to go even harder because QPR are not an easy group of players to crack.
"However, to deliver that performance and win in that fashion, it's right up as one of my best days here."
QPR assistant manager Kevin Bond:
"Credit to Burnley they stopped us from playing, which we knew they'd always do because they work extremely hard.
"I'm just disappointed we weren't able to play through that initial pressure. In the end, when we did get on the ball we then gave it away.
"We weren't able to play from the back or play through midfield as much as we would've liked and that is disappointing.
"It was always going to be a tight game and one goal was probably going to be enough. Our handling of the ball throughout the game wasn't as good as we'd expect it to be."
- 01 Heaton
- 02 Trippier
- 06 Mee
- 14 Jones Booked
- 04 Duff
- 05 Shackell
- 26 Treacy Booked (Stock - 94' )
- 08 Marney (Edgar - 83' )
- 09 Vokes
- 10 Ings
- 19 Kightly
- 03 Lafferty
- 11 Stanislas
- 12 Cisak
- 15 Edgar
- 22 Stock
- 28 Long
- 35 Noble
Queens Park Rangers
- 01 Green
- 02 Simpson Booked
- 39 Assou-Ekotto
- 20 Henry (Jenas - 68' )
- 05 Dunne Booked
- 06 Hill
- 36 O'Neil (Chevantón - 73' )
- 17 Barton Booked
- 09 Austin
- 19 Kranjcar (Phillips - 73' )
- 23 Hoilett Booked
- 03 Traore
- 07 Phillips
- 14 Onyewu
- 16 Jenas
- 18 Chevantón
- 26 Murphy
- 32 Faurlin
Ref: Simon Hooper