Vukojević started to play football at Mladost Ždralovi and moved to NK Bjelovar before joining NK Varteks Varaždin in 1996, where he would play until 2002, when, after finishing his youth years, he was released by the club. After a season back at NK Bjelovar, Vukojević started his professional career at Slaven Belupo in 2003. He moved to Belgian side Lierse S.K. in 2005, but was not given a chance to prove his talent at the club and decided to return to Croatia in December 2005, signing with Dinamo Zagreb.
Dinamo Zagreb
Vukojević made his debut for Dinamo Zagreb in their 3–0 win at home to Međimurje on 4 March 2006. During the 2006–07 season, he established himself as a regular at the club and was often nicknamed "Dinamo's Gattuso" because of his style of play. In the autumn of 2006, Vukojević also made six European appearances for Dinamo Zagreb, appearing in all of their four UEFA Champions League qualifiers against Ekranas and Arsenal as well as both of their matches against Auxerre in the first round of the UEFA Cup. He scored one goal in Dinamo's 5–2 win at home to Ekranas. In the first part of the 2007–08 season, Vukojević appeared in all of Dinamo Zagreb's 12 European matches that season, making six appearances in the UEFA Champions League qualifying and further six in the UEFA Cup. He scored one goal apiece in Dinamo's home matches against Domžale and Werder Bremen in the UEFA Champions League qualifying as well as both of their goals in the UEFA Cup group stage, netting the equaliser in a 2–1 away defeat at Brann and the opening goal in a 1–1 away draw at Rennes. In 2007–08, he also had a successful season for Dinamo Zagreb in the Croatian First League, scoring 11 goals in 29 league appearances as the club won their third consecutive league title. During his time at Dinamo Zagreb, the club also won two consecutive Croatian Cup titles.
Dynamo Kyiv
On 26 May 2008, Vukojević signed a five-year contract with Dynamo Kyiv. He made his Ukrainian Premier League debut on 19 July 2008 in Dynamo Kyiv's 2–0 win at home to Illichivets and quickly established himself as a regular at the club. Vukojević also helped Dynamo Kyiv reaching the UEFA Champions League group stage, appearing in all of their four qualifiers against Drogheda United and Spartak Moscow. In his first match in the UEFA Champions League group stage, a 1–1 draw at home to Arsenal, he won a penalty after being fouled by Bacary Sagna, with Ismaël Bangoura scoring the opening goal of the match from the penalty. On 4 October 2008, Vukojević scored his first goal for Dynamo Kyiv, netting the opening goal in their 4–0 away win at Kharkiv in the Ukrainian Premier League. He went on to appear in all of Dynamo Kyiv's six UEFA Champions League group matches, helping the club to finish third in their group and continue their European campaign in the UEFA Cup. He continued to appear regularly in the competition and scored his first European goal for Dynamo Kyiv on 12 March 2009 in the first leg of their round of 16 tie against Metalist Kharkiv, netting the only goal in his team's 1–0 victory. He missed the second leg due to a yellow-card suspension as Dynamo won the tie on away goals and secured their place in the quarter-finals. During the quarter final second leg against Paris Saint Germain, he scored the final goal in a 3–0 win, helping the side to a 3–0 aggregate win.
Spartak Moscow
After losing his position in the starting line-up of Dynamo Kyiv, Vukojević was sent on a loan to Russian side Spartak Moscow until the end of the season 2012–13.
Dinamo Zagreb
On 11 August 2014, Vukojević joined Dinamo Zagreb on a season-long loan.
International career
Vukojević was first called up to the Croatia national team in August 2007. He made his international debut on 16 October 2007 in Croatia's 3–0 win in a friendly match against Slovakia, coming on as a half-time substitute and scoring his first international goal only two minutes into the second half to give Croatia a 2–0 lead. His competitive debut for Croatia came in their 2–0 away defeat at Macedonia in the UEFA Euro 2008 qualifiers, where he came off the bench to replace Niko Kranjčar in the final 15 minutes of the game. Vukojević was also part of Croatia's squad at the UEFA Euro 2008 finals in Austria and Switzerland, where he appeared in two of the team's four matches. He came on as a late substitute for Ivica Olić in Croatia's opening match against Austria and played all 90 minutes in their final group match against Poland. Croatia won both of these matches 1–0. He made his first appearance in the 2010 FIFA World Cup qualifiers in Croatia's goalless draw at Ukraine on 11 October 2008 and also appeared in their 4–0 win at home to Andorra four days later, being in the starting line-up for both of these matches. On 27 June 2014, Vukojević announced his retirement from the Croatia national team.
International goals
Managerial career
On 10 May 2019, Vukojević was named the manager of the Croatia national under-20 team.
Honours
Dinamo Zagreb
Croatian First League: 2005–06, 2006–07, 2007–08, 2014–15