fix($browser): don’t use history api when only the hash changes

Fixes a failing test on IE9 caused as a side effect
of 404b95fe30a1bcd1313adafbd0018578d5b21d3d being merged
before 0656484d3e709c5162570b0dd6473b0b6140e5b2.

The test should have been independent on the browser running it
and it is now.

Closes #9423
Closes #9424