The Giants say Bonds will be out 5-7 days. He was hurt trying to catch a ball hit by San Diego's Adrian Gonzalez that turned into a triple.
"It swelled up quite a bit," manager Bruce Bochy said. "He jammed it pretty good."
If the injury lingers, Bonds won't have many chances to play at home this season -- or ever, should the Giants choose not to re-sign him after the season. San Francisco starts a seven-game homestand on Thursday against Cincinnati. The Giants' final home game is Sept. 26 against San Diego.
Bonds, who broke Hank Aaron's career record for home runs earlier this season, is playing with a one-year contract with the Giants, worth $15.5 million. The team has not said what it plans to do with Bonds next season.