ORCHARD PARK, N.Y. (AP) -- Chad Pennington made up for the New York Jets' lack of a running game.
Pennington capped three drives of 58 yards or more with touchdowns, and linebacker Victor Hobson's 32-yard fumble return for a score helped the Jets to a 28-20 victory over the Buffalo Bills on Sunday.
The Jets (2-1) won despite allowing 475 yards offense, while managing a mere 256 of their own, including a meager 74 yards rushing. They overcame career outings by running back Willis McGahee, who had 150 yards rushing, and J.P. Losman's 328 yards passing.
"Sometimes you're going to bend. And the important thing is not to break," coach Eric Mangini said. "Obviously, we want to improve on the bending part."
New York also overcame wet and blustery conditions, featuring steady 20 mph winds -- with gusts up to 40 -- blowing in from the west.
The difference for the Jets was the offense, which had five three-and-outs but efficiently led three long touchdown drives. Pennington didn't need a third consecutive 300-yard passing game to pull this one out, instead finishing a modest 19-of-29 for 183 yards passing and a touchdown.
"Tip your hat to our defense," Pennington said. "Whenever we needed a big play on defense, we got it."
The Jets' opportunistic defense forced three turnovers, produced three sacks and limited the Bills to 13 points on five drives inside the Jets 30.
The Bills (1-2) lost their home-opener and failed to build off the momentum of last week's 16-6 win at Miami.
"That's tough. It was errors," McGahee said. "I made errors and other people made errors."
"I think we'll get better," coach Dick Jauron said. "Our guys have to play a little bit smarter."
The Bills started strong -- scoring on Parrish's 51-yard touchdown reception on the second play from scrimmage -- but then progressively kept making costly errors.
Their next three drives ended with a failed fake field-goal attempt, when holder/punter Brian Moorman's shovel pass fell incomplete at the Jets 35; a sack of Losman and fumble at the Jets' 27; and a failed fourth-and-3 attempt at the Jets 28.
New York didn't get its first first down until its fourth possession, but still built a 14-10 lead on Chris Baker's 1-yard reception in the waning seconds of the first half.
The Jets then took control on the Bills' opening possession of the third quarter when safety Kerry Rhodes rushed around the right corner and got around McGahee's weak block. Rhodes got to Losman and stripped the ball, which squirted toward the line of scrimmage.
Hobson picked it up and rumbled down the left sideline for a touchdown. The Bills failed to challenge the score despite replays showing Hobson stepped out of bounds at the Buffalo 3.
"Hey, it was just getting bigger and bigger as it was getting closer to me and I just had to pick it up and run," Hobson said.
Hobson was able to overcome a big mistake earlier in the game when he was called for a roughing the passer penalty. He was left stewing on the sideline, and was benched for most of the first half.
But on his first series back in the third quarter, Hobson picked up a loose ball at his feet and scored on a 32-yard fumble return.
"I couldn't be mad at anyone but myself because I was the one who did it," said Hobson, flagged after hitting Losman at the knees. "I had plenty of time to think about it. ... My whole mentality was, `I've got to get back on the field and help my team."
Rhodes, who forced two fumbles, and linebacker Jonathan Vilma led the Jets with 10 tackles each. Defensive end Bobby Hamilton made another key play, tackling Losman for a 9-yard loss with the Bills facing third-and-goal from the 1.
The Bills settled for a field goal, cutting the Jets lead to 21-13 with 9 minutes remaining. The Jets responded with a nine-play, 58-yard drive capped by Cedric Houston's 5-yard touchdown scamper on his second carry of the season.
Losman made it close, scoring on a 12-yard scamper with 75 seconds left.
The Bills got the ball back on the ensuing kickoff, but their last-gasp drive failed when Losman had the ball slip out of his hands, forcing an incompletion on a fourth-and-3 at the Buffalo 45.
"It's just the little things, the penalties, the turnovers, that hurt us," McGahee said.
Jets RB Kevan Barlow also scored on a 3-yard run. ... McGahee had his fourth straight 100-yard game against the Jets, but the Bills have lost the last two. ... Bills FB Daimon Shelton (head injury) was hurt in the first half and didn't return. ... The
Bills' 475 yards of offense were the most since Buffalo had 495 in a 49-31 loss to Oakland on Oct. 6, 2002.