When Jeff Francis hung an off-speed pitch to the San Francisco slugger, Bonds made him pay with career home run No. 743. Then in the eighth inning, he lined a go-ahead two-run single to right with the bases loaded to lift the Giants past the Colorado Rockies 5-3 on Wednesday night.
Bonds moved within 12 homers of Hank Aaron's career record of 755, hitting a two-run shot to right field in the fourth inning. His eighth-inning single gave him four RBIs on the night and 1,951 for his career, tying him with Stan Musial for fourth place on the all-time list.
Manny Corpas had no choice but to pitch to Bonds with the bases loaded in the eighth. The pitcher replaced loser Francis (1-4) with runners on first and second after singles by Ryan Klesko and Randy Winn, then walked Rich Aurilia to bring up Bonds, who left for a pinch-runner after the hit and got a standing ovation.
Bonds connected for his ninth homer of the year on the first pitch from Francis with one out in the fourth.
The 42-year-old Bonds rounded the bases as "743" flashed on the main center-field scoreboard and fans jumped to their feet. His home run made it 2-0.
It was Bonds' second career homer off Francis. The seven-time NL MVP waved his cap to the crowd when he came out to play left field in the top of the fifth. He flied out to right in the first and again in the sixth.
Bonds had been intentionally walked seven times in his previous six games, including three times Friday at Arizona and twice in Monday's series opener with the Rockies.
Francis, one of 438 different pitchers to surrender a homer to Bonds, pitched 7 1-3 innings and saw his losing streak go to four starts as Colorado lost its seventh straight three-game series.
Brad Hennessey (1-1) pitched 1 1-3 innings for the win. The Giants rallied after Colorado had gone ahead on shortstop Aurilia's throwing error in the top of the eighth.
The Giants bounced back from a weekend sweep at Arizona to take two of three from the Rockies.
Barry Zito allowed two runs and four hits in seven innings, struck out four, walked three and threw 122 pitches. The Rockies tied the game at 2 against Zito in the top of the fifth on an RBI single by Willy Taveras and Troy Tulowitzki's sacrifice fly.
Bonds homered in one of Zito's starts for the second time this year -- also doing so April 21 in a 1-0 home victory over Arizona.
Rockies right fielder Brad Hawpe made two great catches, robbing Dave Roberts of a hit to end the third after slipping to the ground and still making the catch. Hawpe ran in and snagged Winn's popup in shallow right to start the next inning, just avoiding second baseman Jamey Carroll on the play.
After an 0-2 start, Zito beat the Rockies on April 16 in Denver for his first victory with San Francisco since signing a $126 million, seven-year contract during the offseason.
Colorado's Matt Holliday had his career-best 14-game hitting streak snapped.
Notes: Zito had given up only one earned run in 13 innings in two previous starts against Colorado, including pitching six shutout innings April 16.... San Francisco SS Omar Vizquel had the night off. ... Rockies RHP Byung-Hyun Kim allowed one run in five innings and struck out eight for Triple-A Colorado Springs in the second of his three scheduled minor league rehab starts as he recovers from a bruised thumb on his throwing hand.