gpt4 book ai didi

jquery - 为什么 Firefox 5 会忽略 document.ready?

转载 作者:搜寻专家 更新时间:2023-10-31 08:03:35 24 4
gpt4 key购买 nike

为什么按下后退按钮时 Firefox 5.0.1 不刷新此页面?

<html>
<head>
<meta http-equiv="cache-control" content="no-cache">
<script src="http://code.jquery.com/jquery-1.6.2.min.js" type="text/javascript"></script>
<script>
$(document).ready(function() { alert('ready'); });
$(window).load(function() { alert('load'); });
</script>
</head>
<body>
<form action="http://www.google.com" method="get">
<input name="q" type="text">
<input type="submit">
</form>
</body>
</html>

重现步骤:

  1. 点击“提交按钮”
  2. 按返回键
  3. document.ready 或 window.load 均未触发

更新:

这将强制 firefox 重新加载页面:

$(window).unload(function() {});

但是,我最终使用了这个:

window.addEventListener('pageshow', function() {alert('pageshow'); }, false);

最佳答案

Why does Firefox 5.0.1 not refresh this page when the back button is pressed?

因为不需要。

当您在 Firefox 中“返回”并且 Firefox 可以完全从后退按钮缓冲区加载页面时,您返回的不是新页面,而是返回到您离开之前的确切状态的页面如果两者之间没有发生任何事情,这包括所有 Javascript 代码和变量的状态。就您的脚本(和 jQuery)而言,ready() 已经触发。如果它已经被触发,jQuery 将不会再次触发它。

您可能想要的是 listen to the 'pageshow' event ,当页面从缓冲区重新加载时,Firefox 会触发,即使其状态已完全保留。

关于jquery - 为什么 Firefox 5 会忽略 document.ready?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6811929/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com