Wagner pitched to Bonds and gave up a tying ninth-inning homer. Chris Woodward then lined a go-ahead double in the 11th and scored on Jose Reyes' single to lift the New York Mets to a 9-7 victory over the San Francisco Giants.
"He's not the old Bonds, but he can still hit," Wagner said.
Bonds pinch hit and forced extra innings with his 711th homer, a two-run drive. He sent a 99 mph fastball from Wagner into the seats in left-center for his third homer of the year and second in as many games.
"He's still the best in the game to me but I liked our matchup because Billy's one of the best closers in the game," Randolph said.
It was Bonds' fourth career pinch-homer. Wagner became the 418th pitcher to surrender a homer to Bonds -- and blew his second chance save in the process. Bonds hadn't had a pinch-hit homer since Aug. 23, 2001, at Montreal.
"Especially off Billy, it's crazy," Bonds said. "I haven't hit a ball like that off him ever. Ever. ... It was a big boost for us because it tied the game. They came back and beat us. It shows what kind of team they are. We played good against them. Right now, they're probably one of the best teams on the East."
Bonds remained in the game to play left field in the 10th to chants of "Barry! Barry!" and looked like he had a hard time chasing down Woodward's double off Scott Munter (0-1), which scored Ramon Castro. Bonds hit a game-ending flyout in the 11th.
The 41-year-old Bonds is four homers from passing Babe Ruth for second on the career list and 45 away from breaking Hank Aaron's mark of 755.
"I haven't thought about that right now," said Bonds, whose tender right knee was helped by the warmer weather. "I'll think about it later."
Darren Oliver (1-0) got the final out in the 10th and worked the 11th for the win, and the Mets took two of three in the second series of their 10-game trip and opened a five-game lead on the Braves heading into a weekend series at Atlanta.
Pinch-hitter Julio Franco had given the Mets the lead with a two-run single in the eighth and then stole a base with still speedy 47-year-old legs. David Wright's RBI double scored Franco from second.
"I've told you guys I don't believe in age, I don't worry about age," Franco said.
Carlos Delgado splashed a home run into McCovey Cove for his ninth of the season, tying the franchise mark for the month of April that Dave Kingman accomplished in 1976.
While Franco became the oldest player in major league history to hit a home run last Thursday at San Diego -- and he's batting .400 -- he was only the second-oldest to steal a base, according to the Elias Sports Bureau. Arlie Latham swiped a bag in 1909 for the New York Giants at age 49.
Bannister hobbled home with the go-ahead run despite the pain of a strained right hamstring in the sixth that put the rookie pitcher in position for the win following five strong innings on the mound before the injury.
Bannister, who had followed his fourth-inning two-run double with another double, went 2-0 in his first four starts and had the lead again when he hurt himself running the bases.
He began limping as he approached third base on Kaz Matsui's RBI double and somehow made it home before falling to the ground after touching the plate.
Bannister, 2-0 over his first five starts, made it 4-3. He allowed three runs and seven hits in five innings, struck out two and walked one.
Bannister had to be helped off the field and left to a warm applause. He will be reevaluated Thursday.
"I felt it going to second and I slowed down," Bannister said. "I didn't think it was anything but when I got to third and planted, it grabbed. It felt like I was dragging a big weight behind me."
The Giants rejiggered their rotation to get Matt Morris back on the mound three days after he was ejected Sunday at Colorado after only eight pitches for plunking two of the five batters he faced, but he didn't have his best stuff.
Delgado's solo shot gave the Mets homers into the water for the second straight game after Cliff Floyd did it in New York's 4-1 victory Tuesday night. It was the 13th splash-hit homer by a San Francisco opponent. The Giants have done it 40 times - 31 by Bonds.
Bonds was not in the starting lineup after playing a day after hitting career homer No. 710. After Thursday's off-day, manager Felipe Alou hopes Bonds will play both Friday and Sunday against Arizona -- and possibly Saturday, too.
- Randy Winn ended an 0-for-17 slump with his first-inning single - batting in the No. 3 hole for the first time this season instead of his regular leadoff spot. He singled again in the third. Winn batted third for the 63rd time in his career.
- San Francisco moved winless ace Jason Schmidt back to Friday to give him extra time and get Morris his outing.
- Reyes stole two bases a day after swiping the 100th of his career.