TORONTO - In a wild game marked by several momentum shifts, Canadian Brett Lawrie refused to give the Texas Rangers another chance to come back.

He hit a walkoff solo home run off Mike Adams (0-1) in the bottom of the ninth inning as the Toronto Blue Jays defeated the Texas Rangers 8-7 on Tuesday night at Rogers Centre.

Lawrie, from Langley, B.C., hit a 3-2 pitch that bounced off the top of the wall in left-centre field and made a winner of Francisco Cordero (1-1), who recorded his second blown save in the top half of the frame.

"We had to get some life, we needed some life," Lawrie said. "You can't give those games away. So we had to be upbeat. We said, 'OK let's get on it,' and I'm just glad we got it over with in the first (at-bat)."

Kelly Johnson hit a three-run shot and Jose Bautista added a solo homer for the Blue Jays, who improved to 13-11. Toronto fought back from 5-0 and 6-4 deficits and blew a one-run lead before Lawrie's second career walkoff homer.

"It shows a lot about this team and the heart that we have," Lawrie said. "We're not going to quit until the end."

Cordero got the first two outs in the ninth before allowing three straight singles to centre field. Michael Young drove in Ian Kinsler with the tying run.

Texas (17-7) jumped out to an early lead by tagging Toronto rookie Drew Hutchison for five runs in the second inning. The youngster settled down after that and worked six innings in his first start at Rogers Centre.

The 21-year-old right-hander struck out the first four batters before he was roughed up. Kinsler hit a two-run double as the Rangers batted around in the frame.

The Blue Jays cut the deficit in the third inning on back-to-back home runs.

Johnson's fifth homer of the season was a three-run shot that also bounced out off the top of the fence in left-centre field. Bautista, who has been in a nasty slump of late, followed with a no-doubt solo blast to left field for his fourth homer of the year.

"It's a matter of time," Johnson said of his teammate. "He's going to do it. We have complete faith in him and confidence in everybody in the lineup, especially him."

The Rangers took advantage of some sloppy Toronto defence in the fourth inning to make it a 6-4 game. Hutchison snared a comebacker and threw to Yunel Escobar for a force play at second but the shortstop couldn't come up with it.

That put runners on the corners with one out and Hutchison got Kinsler to ground weakly to second base. Johnson stepped on the bag for the force but a run scored when his throw to first base was wild.

Rangers starter Neftali Feliz was pulled after walking the first two batters in the sixth. Left-hander Robbie Ross came on in relief and got Adam Lind to hit into a double play and Edwin Encarnacion to ground out.

The Blue Jays loaded the bases in the seventh with nobody out and scratched out two runs with ground balls in the infield. Johnson then knocked in his fourth run with a sharp single off reliever Alexi Ogando that scored Jeff Mathis and gave Toronto its first lead of the game.

"Having a win like that's very big," Johnson said. "I think the fans got really excited, I think we got excited. Walkoff win, walkoff homer. It's just a big win."

Notes: Announced attendance was 18,774 and the game took two hours 56 minutes to play. ... Blue Jays backup infielder Omar Vizquel was ejected by home-plate umpire Sam Holbrook in the fifth inning. Vizquel was sitting on the bench in the dugout at the time. "He said something he shouldn't have," said Jays manager John Farrell. ... The teams will close out the three-game series on Wednesday at 12:37 p.m. Eastern Time. Rangers southpaw Matt Harrison (3-1) is scheduled to start against Blue Jays ace Ricky Romero (3-0). ... The Blue Jays will kick off a 10-game road trip on Thursday night against the Los Angeles Angels. ... Texas is the only team in the major leagues that has not lost consecutive games this season. ... The Rangers have a 190-188 edge in the all-time series against the Blue Jays. ... Encarnacion singled in the second inning but had his four-game home run streak come to an end. He was named Toronto's player of the month for April. He hit .322 last month with eight homers and 21 RBIs. Romero finished second in the voting after making four quality starts and posting a 3.18 earned-run average. ... Josh Towers was the last Blue Jay to start the game with four strikeouts in a row. He did it against the Rangers on April 27, 2007. ... Feliz gave up a career-high six walks.