Yes, on-page is also very important but when you use some flashy stuffs, video based sites, shopping sites, then you also have to take care of your site look means lacking on-page optimization.
This thing you can recover by building effective links.
For building links I would say two things are very important, relevancy and natural.
Relevancy is simple to understand, as you can understand it is related to your site's niche, any site, contain all keywords or some keywords in its domain and or its pages, heading, title would be relevant.
For natural links, you need to consider some points:
How many links you have to build daily or weekly
You shouldn't build links only on one extension - let it be natural (but your site is regional like .dk, .in, .ws etc. then you have to find these extensions also, if you didn't find then not a problem keep building links using other factors, methods.
The elements of pages should also be natural, like use links in image, video, anchor text, in-content, signature, sidebar, footer, menu etc.
You should also build some links of your link (link wheel technique)
Don't select the same type of sites, select multiple methods of building links like forums, blogs, directories, articles etc...
Don't build exact no of links daily, build like 20 links, 30 links, 15, links, 73 links etc...
Also try to use some .gov and .edu for better result.
Links which are taken from content have higher value in the eyes of search engines.