use the 'hashchange' js event instead of the 'popstate' event to catch hash changes