CHICAGO - Charlie Morton could take one positive from this loss: he went deeper than he had in any other start.
The only problem was Alfonso Soriano, who also went deep - twice.
The seven-time All-Star hit a pair of two-run homers in consecutive innings to lead the Chicago Cubs to a 4-1 victory over the Pittsburgh Pirates on Saturday.
Edwin Jackson and three relievers combined on a five-hitter, and the Cubs handed the Pirates just their third loss in 14 games.
Pittsburgh came in with the best record in the majors and a seven-game road win streak, but the Pirates couldn't get much going at the plate or find a way to contain Soriano.
That was the difference for Morton, who lasted a season-best six innings.
Today: Pittsburgh Pirates at Chicago Cubs, 2:20 p.m.
Pitching matchup: Pirates RHP A.J. Burnett (4-6) vs. Cubs RHP Carlos Villanueva (2-4)
"The scoring plays were home runs," he said. "What I need to do and what I do well usually is keep the ball in the park and I didn't do that. That's why I got hurt."
Soriano's drive in the fourth after Pedro Alvarez homered in the top half put the Cubs ahead, and he followed that with a long shot to the bleachers in left to make it 4-1 in the fifth.
That was enough for Jackson (5-10), who won his second straight start. A disappointment after signing a four-year deal with Chicago in January, the veteran right-hander had one of his better outings and improved to 6-2 in 10 starts against Pittsburgh.
He held the Pirates to just one run and four hits in 5 2-3 innings, leaving to cheers after he walked Garrett Jones to put runners on first and second.
James Russell came in and struck out Alvarez to end the threat.
Matt Guerrier worked two scoreless innings, and Kevin Gregg came on in the ninth for his 15th save in 16 chances.
"Every time we had a chance to maybe extend an inning or move the chains Jackson made a pitch and got out of the inning," Pirates manager Clint Hurdle said.
Morton (1-2) allowed four runs and seven hits in his fifth start this season. He struck out six and walked three.
"That's one of the good things today," he said. "I did go deeper than I have gone. I feel fine."
Starling Marte had two hits for the Pirates after collecting three the previous day and extended his streak to a career-high 11 games. He also had two steals, although he got caught trying to swipe third in the third inning.
Pirates second baseman Neil Walker left the game because of discomfort on his right side and is day to day. Brandon Inge replaced him at second base in the fifth.
Soriano put the Cubs ahead in the fourth after Anthony Rizzo doubled off the left-field wall, and he struck again with a shot in the fifth. The ball sailed to the last row of the left-field bleachers for his 12th homer this season.
That gave him 32 multi-homer games in his career and two this season. He also tied Harold Baines for 59th on baseball's career home run list with 384 and took sole possession of 12th place on Chicago's list with his 175th and 176th homers as a Cub after beginning the day even with Hall of Famer Andre Dawson.
"It's fun when we have a teammate swinging the bat real well," Jackson said. "It's a lot of fun in the dugout. It's positive energy and that's what this team needs."
Game notes: Hurdle was a bit amused by footage showing an usher interrupting an interview with his dad by Pittsburgh broadcaster Robby Incmikoski during Friday's game. The usher told them they were blocking fans' view. Hurdle said a few of his family members were upset. "I'm kind of just taking the high road and chuckling about it," Hurdle said. This weekend is the Pirates' annual father/son trip, where players and coaches get to bring their dads. ... The Cubs gave top prospect Javier Baez a promotion, moving him from Class A Daytona to Double-A Tennessee. The infielder was their minor league player of the month for June. "It's time for a new challenge for Javier, and I think he'll respond well to it," general manager Jed Hoyer said. He also said it's "highly unlikely" Baez will reach the majors this year. ... A.J. Burnett (4-6, 3.12 ERA) returns to the Pirates' rotation after missing the past month with a strained right calf, and Carlos Villanueva (2-4, 3.45) starts for the Cubs today.