【问题标题】:Disabling back button in browser [duplicate]在浏览器中禁用后退按钮[重复]
【发布时间】:2014-04-09 05:59:54
【问题描述】:

我需要在登录页面出现时禁用后退按钮。

注意到下面的代码不起作用。

function DisableBackButton() {
    window.history.go();
}

window.onbeforeunload = DisableBackButton;

对于服务器端,我还添加了一些服务器端代码,如下所示。

response.setHeader("Cache-Control", "no-cache");
response.setHeader("Cache-Control", "no-store");
response.setHeader("Pragma", "no-cache");
response.setDateHeader("Expires", 0);%>

【问题讨论】:

标签: java javascript jquery jsp servlets


【解决方案1】:

试试这个:

window.onload = function () { history.forward(); }; //force user to redirect
window.onunload = function() {}; // trick for some browsers like IE

【讨论】:

    【解决方案2】:

    这是 HTML5 的一种可能的解决方案:

    <script type="text/javascript">
        location.hash='#no-';
        if(location.hash == '#no-') {
            location.hash='#_';
            window.onhashchange=function() {
                if(location.hash == '#no-')
                    location.hash='#_';
            }
        }
    </script>
    

    【讨论】:

      【解决方案3】:

      禁用后退按钮不起作用的原因有很多。最好的办法是警告用户:

      window.onbeforeunload = function() { return "You work will be lost."; };
      

      此页面确实列出了您可以尝试禁用后退按钮的多种方法,但都不能保证

      click this link

      【讨论】:

        猜你喜欢
        • 2011-04-06
        • 2011-08-06
        • 2010-10-31
        • 2014-04-17
        • 1970-01-01
        • 2014-08-21
        • 2014-05-08
        相关资源
        最近更新 更多