Monday, August 15, 2011

Linking using history.back()

Easy navigation and discoverability are very important aspects of website or application usability. The user should be able to easily dig deep in the content as well as to navigate to broader category of content.

I stumbled upon a site that has a "Back" link in a leaf level content page. As a user I thought it might be a way to go up and visit the related content or the parent category. Unfortunately, history.back() was used. And since I reached this page using a search or a direct link and opened it in a new tab, it led me nowhere.

The designer / developer assumed that the user will reach this page using a specific path and will open it in the same window and tab.

That was a very bad idea as the most of the content nowadays is reached using search engines. And you don't your visitors to leave your site back to Google after getting him to your site!!. Also the design is broken in case the page is opened in a new window or tab.

Maybe the rationale behind using this technique was to get the user back (within the site) to the location from where he got to the current page, be it direct navigation links or internal site search page. If so, a better implementation should be using HTTP referrer, or explicit query string value to indicate the source of the request.

Small details can make big changes in usability. Different scenarios should be taken into consideration when designing the navigation.