"You see red," he said.
Enraged, the Washington slugger charged the mound, wildly fired his helmet and traded punches to the head with reliever Hunter Strickland, setting off a furious brawl Monday during the Nationals' 3-0 win over the San Francisco Giants.
"You never want to get suspended or anything like, but sometimes you just got to go and get them and can't hesitate," Harper said. "You either go to first base or you go after him and I decided to go after him."
The two players have a history, stemming from two home runs Harper hit off Strickland in the 2014 playoffs.
"I can see how that stands in people's minds," Strickland said.
This flashpoint came in their first matchup since then -- with two outs in the eighth inning, none on and Washington ahead 2-0, Strickland hit Harper with the first pitch, a 98 mph fastball.
Harper didn't wait. The four-time All-Star pointed his bat at Strickland, yelled at him and took off.
"My head was on a swivel, as quick as I could to not get taken out by somebody on their team or anything like that," he said.
No one got in Harper's way as he rushed the mound. Giants star catcher Buster Posey stuck near the plate when Harper bolted, and stayed clear of the fracas as things escalated.
"Strick and him are the only ones that can answer why" the fight happened, Posey said.
Posey got a concussion last month from a beaning. He said he wasn't thinking about that accident, but was concerned about injuries.
"There were some big guys tumbling around out there," he said. "So it was a little dangerous to get in there sometimes."
Harper's eyes were wide as he flung his helmet -- it wasn't close to Strickland, it might've slipped, helmets are hard to throw accurately -- and they started swinging away.
The 6-foot-4 Strickland hit Harper in the face, then they broke apart for a moment before squaring off again. Harper punched Strickland in the head as the benches and bullpen emptied.
"I was trying to go after him, with the helmet or with myself, just doing what I needed to do keep it going, I guess," Harper said.
Giants teammates Michael Morse and Jeff Samardzija collided hard as they tried to get between the two fighters.
"I'm OK, but why is that news?" Morse said. "I was trying to get in there to break everyone up."
Three Giants players forcefully dragged Strickland from the middle of the pack all the way into the dugout, while a teammate held back Harper.
Harper and Strickland were both ejected, and are certain to face punishment from Major League Baseball.
No injuries were reported in either clubhouse. Harper attributed a scratch to Nationals third baseman Anthony Rendon pulling him away from the brawl.
In the 2014 NL Division Series, Harper hit two home runs off Strickland. Harper watched the second shot sail down the line, in Game 4, and glared at the reliever as he rounded the bases.
"I wasn't sure what was going on, but I think (the Giants) were definitely shocked at the situation, shocked that he would do something like that three years later," Harper said.
"It just wasn't relevant. Like I said, it was three years ago, over a thousand days, I guess," Harper said. "I don't know why he's thinking about it. He's got a World Series ring. It's on his finger and he's able to look at it every single night."
Angry, Harper did at least appreciate there was no head-hunting.
"One thing I've got to say about Strickland is he hit me in the right spot, so I do respect him for that," Harper said. "He didn't come up and in toward my face like some guys do, so I respect him on that level."
Strickland said he missed his spot.
"I left the ball over the plate a couple of times to him," he said. "He's taken advantage of that, so I went inside. Obviously, I got in a little too far."
"He decided to come out, that's what he decided to do. It's go time. You protect yourself and stand your own ground," he said. "And I'll take what consequences come with it. I was pretty fired up, to be honest. It's part of the game."
Giants manager Bruce Bochy framed it for everyone.
"It looks bad, it does," he said. "Harper gets hit and you look at a guy who's given up some home runs, and he'll tell you that he was trying to come in. You don't want to make a mistake there. You have two guys who don't care for each other too much. It was a pretty good pile."
Nationals manager Dusty Baker had no doubt about Strickland's intent.
"We were ahead 2-0, two outs and nobody on base. I mean, that's the prime time to hit somebody if you're going to hit them, it looked like it was intentional to me," he said.
"What's a man supposed to do? He's not a punching bag, he's human with emotions. I know he took (Strickland) deep in the playoffs a couple of times and he probably took exception to that. I mean baseball is a game where you don't forget and you can hold grudges for a long, long time."
Too long in the estimation of Harper and his teammates.
"Completely uncalled for," Nationals second baseman Daniel Murphy said. "Bryce hits one ... off him in a big spot from what I understand, I think I remember seeing it live, and Hunter waits three years. I think if the Giants thought it was that egregious, Bryce would've gotten one the next season."
Nationals outfielder Jayson Werth, Harper's teammate in 2014, said the incident shouldn't come as that big a surprise.
"You can't assume what other people are thinking or what other people are going to do," he said. "History is history, some people hold it longer than others."
Tanner Roark (5-2) struck out six and allowed six hits in seven innings. Koda Glover pitched a scoreless ninth to notch his sixth save.
Ryan Zimmerman hit his 14th homer, off Matt Moore (2-6). Murphy hit an RBI double in his first game after missing three games due to illness.
LHP Gio Gonzalez (3-1, 2.90 ERA) is 4-4 with a 2.94 ERA in 11 starts against the Giants. Samardzija (1-6, 4.50) is 2-5 with a 3.83 ERA in 14 appearances (seven starts) against Washington and 0-3 with a 4.50 ERA in his last three starts against the Nationals.