【问题标题】:firefox browser back button doesn't refresh the pageFirefox浏览器后退按钮不刷新页面
【发布时间】:2014-09-22 11:25:31
【问题描述】:

我的应用在 chrome 上运行良好,但在 Firefox (v 32.0) 中,却产生了一个问题。

注销后,如果通过单击浏览器的后退按钮返回。它不应允许返回并加载以前访问过的页面。

我已经很好地编码来实现这一点,并且在任何地方都可以正常工作。它在 chrome 中也可以正常工作。但在火狐浏览器的后退按钮的情况下,它不会刷新/重新加载页面,而只是显示以前访问过的页面。

我想如果我让它在点击后退按钮时重新加载页面,那么它就会解决。

为此,我在该页面上尝试了以下代码:

<input type="hidden" id="refreshed" value="no">
    <script type="text/javascript">
    onload=function(){
      console.log("method called.......");
    var e=document.getElementById("refreshed");
    if(e.value=="no")
     {
       e.value="yes";
      }
    else
      {
       e.value="no";
       location.reload();
      }
    }
    </script>

但是没有用。

有什么建议吗?

【问题讨论】:

  • 您是否尝试将元标记编辑为 no-cache/expires -1?
  • 考虑使用 HTML5 History API 而不是依赖无状态行为。
  • 是的,我试过了,但它不起作用。
  • @Niels Keurentjes...请提供任何示例/链接。
  • 尝试将Cache-Control: no-cache, max-age=0, must-revalidate, no-store 标头添加到相关页面。

标签: javascript html angularjs


【解决方案1】:

我怀疑您的代码是否有效,我看不到它如何到达else,因为onload 在页面加载时只发生一次,reload 将在下一页加载时再次调用它。要防止返回按钮,您可以使用window.onbeforeunload

更多细节在这里:how to stop browser back button using javascript

【讨论】:

    猜你喜欢
    • 2013-07-19
    • 2019-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-21
    • 1970-01-01
    • 2013-03-19
    • 2013-06-23
    相关资源
    最近更新 更多