提交表单时,我会显示加载动画并禁用按钮。不幸的是,当我单击后退按钮时,Firefox 仍然显示加载图像,并且按钮仍然处于禁用状态。这在 Chrome 中不会发生。有什么想法吗?
$(document).ready(function() {
$('#go').removeAttr('disabled');
$('#loading').replaceWith('<img id="loading" src="/static/images/loading.gif" style="display:none; vertical-align:middle" />');
$('#go').click(function(e) {
e.preventDefault();
$('#go').attr('disabled', 'disabled');
$('#loading').show();
$('#go_form').submit();
});
});
最佳答案
Firefox 在浏览器 session 中对整个网页(包括其 JavaScript 状态)使用内存缓存。在访问的页面之间向后和向前移动不需要页面加载。此功能使页面导航非常快。
为了检测这一点,请使用 pageshow
事件。该事件将有一个名为 persisted
的属性,如果您在缓存中导航,该属性将为 true。如果您看到此状态,则可以重置页面的状态。
关于javascript - 按下后退按钮时 Firefox 会记住文档修改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10770318/