Window: hashchange event

The hashchange event is fired when the fragment identifier of the URL has changed (the part of the URL beginning with and following the # symbol).

Bubbles Yes
Cancelable No
Interface HashChangeEvent
Event handler onhashchange

Examples

You can use the hashchange event in an addEventListener method:

window.addEventListener('hashchange', function() {
  console.log('The hash has changed!')
}, false);

Or use the onhashchange event handler property:

function locationHashChanged() {
  if (location.hash === '#cool-feature') {
    console.log("You're visiting a cool feature!");
  }
}

window.onhashchange = locationHashChanged;

Specifications

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
hashchange_event
8
4-8
A regular Event object is fired, rather than a HashChangeEvent object.
12
3.6
8
10.6
5
≤37
18
4
11
5
1.0

See also

© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Window/hashchange_event