Is it possible to e.preventDefault in window.onPopState?

phoenix picture phoenix · Sep 7, 2015 · Viewed 14.2k times · Source

I'm trying to stop the user from going back in my web app. For this I tried catching the window.onpopstate and added e.preventDefault to cancel the back button effect.

But it doesn't seems to happen.

window.addEventListener('popstate',function(e){ 
console.log(e); e.preventDefault();  
});

Is it not possible to prevent the popstate event of browser? Or am I doing something wrong?

Answer

Patrick Klug picture Patrick Klug · Sep 7, 2015

According to this documentation, the popstate event is not cancellable:

Specification: HTML5
Interface: PopStateEvent
Bubbles: Yes
Cancelable: No
Target: defaultView
Default Action: None