这种方式,可以消除后退的所有动作。包括 键盘、鼠标手势等产生的后退动作。
原理:利用popstate事件和pushState方法,popstate是html5新增的一个事件,它会在浏览器历史发生变化时触发,大致上可以这么理解,用户点击后退按钮时,会触发popstate事件。
例如一下代码:
<script language="javascript">
//防止页面后退
history.pushState(null, null, document.URL);
window.addEventListener('popstate', function () {
history.pushState(null, null, document.URL);
});
</script>
网友评论