DETROIT — Matthew Stafford threw a 24-yard touchdown pass to Calvin Johnson and the Detroit Lions went on to beat the Buffalo Bills 38-32 Thursday night.
Stafford and Johnson went to the sideline healthy after their only drive to make the Lions happy that their dynamic duo avoided injuries in the fourth and final preseason game.
Detroit's offense, defense and special teams contributed toward the Lions (2-2) taking a 28-7 lead in the first quarter over the Bills (0-4).
Buffalo quarterback Ryan Fitzpatrick completed all five of his passes, including a 4-yard TD pass to Stevie Johnson, on his first and last possession.
The Bills gave Tyler Thigpen an extended opportunity to keep his job as their No. 2 QB and he didn't take advantage of it. Thigpen had an interception returned for a touchdown in his second straight game.
STEELERS 17, PANTHERS 16
PITTSBURGH — Charlie Batch completed 11 of 14 passes for 102 yards and a touchdown to bolster his hopes of playing a 15th NFL season and Pittsburgh beat Carolina in its preseason finale.
Batch hit Emmanuel Sanders for a 37-yard play on Pittsburgh's first drive and later found Will Johnson for a 27-yard gain to set up a field goal as the Steelers (3-1) won a battle of the backups against the Panthers (2-2).
Carolina quarterback Jimmy Clausen passed for 173 yards and two touchdowns, including a 79-yard score to rookie Lamont Bryant with 2:31 to play to bring the Panthers within a point. The 2-point conversion failed, however, and kicker Justin Medlock missed a 50-yard field goal with 32 seconds left.
BEARS 28, BROWNS 20
CLEVELAND — Quarterback Colt McCoy did little to solidify winning Cleveland's backup job — or impress any other NFL team — and Chicago's Josh McCown threw two touchdown passes in the first half, leading the Bears over the Browns in the exhibition finale.
McCoy, who lost his starting job in training camp to rookie Brandon Weeden, is battling Seneca Wallace to be Cleveland's No. 2 QB. McCoy went 2 of 5 for 16 yards and an interception.
The Bears (3-1) returned an interception and blocked punt for TDs in a 90-second span of the third quarter to pull away from the Browns (2-2).
McCown played the entire game, finishing 20 of 29 for 157 yards and the two TDs. He will sit behind starter Jay Cutler and Jason Campbell.
COLTS 20, BENGALS 16
INDIANAPOLIS — Chandler Harnish threw a 42-yard touchdown pass to tight end Dominique Jones, leading the Colts over Cincinnati in the preseason finale.
Neither starting quarterback stuck around long. No. 1 draft pick Andrew Luck left after Indy's first series.
Bengals quarterback Andy Dalton left with a bruised right arm after just six plays. Coach Marvin Lewis later said Dalton would have returned had it been a regular season game.
That left the heavy-lifting to the backups — and the officials, who called 24 penalties.
Behind Harnish, the last selection in this year's draft, Indy (2-2) rallied from a 10-0 deficit to take a 14-13 halftime lead.
The Bengals (2-2) regained the lead on a third-quarter field goal, but Harnish threw for the winning score with 6:54 to play.
EAGLES 28, JETS 10
PHILADELPHIA — Greg McElroy became the first quarterback to lead the Jets into the end zone this preseason in a loss to Philadelphia.
Mark Sanchez, Tim Tebow and most of the Jets starters didn't play in this battle between backups and guys fighting for roster spots.
Michael Vick and all of Philadelphia's starters watched from the sideline.
Trent Edwards threw for 197 yards and two TDs to help the Eagles (4-0) finish unbeaten in the preseason for the first time since 1995.
The Jets (0-4) became the first team in 35 years to go three preseason games without a touchdown, matching the 1977 Atlanta Falcons for offensive futility.
McElroy finished 12 of 17 for 90 yards and one TD. He rushed for 33 yards.
TEXANS 28, VIKINGS 24
HOUSTON — Trindon Holliday had his third kick return for a touchdown of the preseason and Justin Forsett rushed for 114 yards and two more scores in Houston's win over Minnesota in the preseason finale.
Holliday brought back a punt 76 yards for a touchdown in the third quarter, bolstering his case to make the Texans (3-1) solely as a special teams threat. Forsett broke a 52-yard run on Houston's second play from scrimmage and set a Texans' rushing record for a preseason game.
Jordan Todman rushed for 114 yards, including a 76-yard touchdown for Minnesota (1-3). Jarius Wright caught six passes for 122 yards, including a touchdown for the Vikings.
JAGUARS 24, FALCONS 14
JACKSONVILLE, Fla. — Kevin Elliott had a 77-yard touchdown reception, likely solidifying his spot on the regular-season roster, and Jacksonville beat Atlanta.
The teams took vastly different approaches to the game. The Jaguars (3-1) played their offensive starters into the second quarter; the Falcons (1-3) played just two regulars: linebacker Akeem Dent and defensive tackle Peria Jerry.
The results hardly showed that.
Jaguars quarterback Blaine Gabbert fumbled on the opening play. Trying to pitch to Rashad Jennings, Gabbert's toss hit fullback Greg Jones in the backside. The Falcons recovered, and Jacquizz Rodgers scored on the next play. Gabbert and his fellow starters stayed in for 25 plays, but failed to score.
RAMS 31, RAVENS 17
ST. LOUIS — Sam Bradford threw three touchdown passes in 1½ quarters, giving St. Louis a win over Baltimore to end the preseason.
Rams coach Jeff Fisher, taking over a franchise that has totaled 15 wins in the past five seasons, used virtually all of his starters until the score was 21-0 on a 9-yard catch by Mike Hoomanawanui with 6:59 to go in the half. Bradford threw five touchdown passes in the preseason, all of them at home for the Rams (2-2).
Ravens coach John Harbaugh, gearing up for a Super Bowl run after losing in the AFC title game last season, started just a handful of his regulars. The Ravens committed four turnovers and Tyrod Taylor started at quarterback for Joe Flacco, and they also rested running back Ray Rice and linebacker Ray Lewis.
Curtis Painter, the third-string QB for Baltimore (2-2) threw three interceptions and added touchdown passes to Billy Bajema and Deonte Thompson.
BRONCOS 16, CARDINALS 13
GLENDALE, Ariz. — While Peyton Manning watched, Denver's reserves pulled out a wild one in the desert.
Manning and the rest of the Broncos' starters took the fourth game of the preseason off, and Denver got a 44-yard field goal from Matt Prater as the game ended to beat Arizona.
Omar Bolden, a fourth-round draft pick from nearby Arizona State, returned a kickoff 103 yards for a touchdown to ignite a second-half comeback for Denver (2-2).
In contrast to the Broncos, Arizona used 10 starters on offense and 10 on defense in the game's first few series. The Cardinals' two candidates for starting quarterback, John Skelton and Kevin Kolb, did not play.
First-round draft pick Michael Floyd made a spectacular 22-yard touchdown catch for the Cardinals (1-4).
49ERS 35, CHARGERS 3
SAN FRANCISCO — Delanie Walker caught a 32-yard touchdown pass from backup quarterback Colin Kaepernick, Alex Smith handed off five times before calling it a night and San Francisco wrapped up the preseason with a win over San Diego.
Walker returned to action for the first time since the exhibition opener after he injured his right knee during practice on Aug. 12. He missed time late last season with a broken left jaw before returning for the NFC championship, so the TD catch will only serve as a boost heading into the regular season next weekend for the 49ers (3-1).
Philip Rivers went 8 for 10 for 89 yards and an interception in one quarter for San Diego (3-1), which will be back in the Bay Area to open the season on Monday Night Football Sept. 10 at Oakland.
SEAHAWKS 21, RAIDERS 3
SEATTLE — Rookie quarterback Russell Wilson played just one quarter in his final tuneup before the regular season, so high-priced backup Matt Flynn led Seattle on three scoring drives.
The Seahawks (4-0) closed out the second perfect preseason in franchise history with a win over Oakland (1-3).
Wilson saw limited action just days after winning the quarterback competition and being chosen the regular-season starter. Flynn played most of the second and third quarters and led Seattle to a pair of touchdowns.
Oakland starting quarterback Carson Palmer saw six snaps and handed off on all of them, including a pair of third-down running plays. Darren McFadden never saw the field.
With Palmer getting a short stint, Matt Leinart played the remainder of the first half and was unimpressive. Leinart was 3 of 11 for 14 yards with an interception and a passer rating of 1.7.
TITANS 10, SAINTS 6
NASHVILLE, Tenn. — New Orleans took no chances in its final preseason game, resting all starters in a loss to Tennessee.
The Saints prepare to return home to storm-ravaged Louisiana and put a scandal-ridden offseason behind them.
Saints interim coach Joe Vitt scratched 26 players, including starting quarterback Drew Brees and their top three running backs and wide receivers, ensuring the team will be on solid footing as he begins a suspension for the pay-for-injury scheme by New Orleans (2-3).
Offensive line coach Aaron Kromer will lead the team into its Sept. 9 regular-season opener against the Washington Redskins.
New Orleans' backups largely outplayed the Titans (3-1) starters early in what was a meaningless game for just about everyone but new Tennessee starting quarterback Jake Locker