今天在写一个功能需求时,发现页面执行完成后,如果浏览器后退一步再次请求,会产生两次执行效果。为了避免这种事的发现,就想到了用js脚本代码来禁止浏览器的后退操作。

试了网上不少的js禁止浏览器后退的代码,发现只有下面的一种效果还是可以的。

js禁止浏览器后退的代码

<script language="javascript">
    history.pushState(null, null, document.URL);
    window.addEventListener('popstate', function () {
        history.pushState(null, null, document.URL);
    });
</script>