我在 JQUERY fadeIn 的末尾发布一个表单。
- 当用户点击提交时 - 一个 DIV“SWITCHING_SCREENS” - 带有 其中的消息通过 JQUERY 淡入并覆盖表单页面。
- 一旦 div 完全淡入 - javascript 就会将表单发布到 另一页。
Javascript:
Theform = document.getElementById('customers_form');
$('#SWITCHING_SCREENS').fadeIn('slow', function(){
Theform.submit();
});
这一切运行良好,我在提交或其他方面没有任何问题。 但是,一旦用户点击浏览器后退按钮 (firefox),SWITCHING_SCREENS 仍然可见。
我已经看到表单元素的后退按钮缓存 - 但希望 JQUERY 在后退按钮上重置。或者我只是没想到它会缓存。
- 好像已经缓存了?
- JQUERY 是否缓存了 DIV 的此状态?
我已经尝试过:
Javascript:
Theform = document.getElementById('customers_form');
$('#SWITCHING_SCREENS').fadeIn('slow', function(){
Theform.submit();
$('#SWITCHING_SCREENS').hide();
});
这确实修复了使用浏览器后退按钮时 DIV 处于“淡入”状态的缓存...
但它也会在页面实际切换到发布页面之前删除 DIV。我希望 div 在页面发布到下一页时保持可见 - 并且在访问者点击后退按钮时消失。
这似乎只发生在 Firefox 中。
谢谢。 问候。
最佳答案
您可以使用.unload()它不会专门拦截后退按钮,而是拦截卸载当前页面的任何事件。它可以是任何点击链接、前进按钮或后退按钮,具体取决于浏览器。
$(window).unload( function () { $('#SWITCHING_SCREENS').hide(); });
The unload event is sent to the window element when the user navigates away from the page. This could mean one of many things. The user could have clicked on a link to leave the page, or typed in a new URL in the address bar. The forward and back buttons will trigger the event. Closing the browser window will cause the event to be triggered. Even a page reload will first create an unload event.
关于JQUERY 缓存如果发布到表单后后退按钮 - JQUERY fadeIn 仍然可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16886496/