是否可以使用
javascript禁用任何使浏览器远离当前页面的代码?
@H_403_2@我已经尝试了以下代码,但它没有工作:
1.禁用重定向的任何代码
2.绑定所有可以做到这一点的元素(链接,表单,我还缺少什么?)
$(window).unload(function(e){ event.stopPropagation(); event.preventDefault(); return false; });@H_403_2@我猜这个代码不起作用,因为在卸载()的时候,太晚了. @H_403_2@任何其他想法? @H_403_2@可能的实现:
1.禁用重定向的任何代码
2.绑定所有可以做到这一点的元素(链接,表单,我还缺少什么?)
解决方法
您可以在浏览器中弹出一条消息,询问用户是否希望离开页面.这适用于强制浏览器离开当前页面的所有事件(甚至提交表单并关闭浏览器).
@H_403_2@测试页:http://dl.dropbox.com/u/3937673/test.html
@H_403_2@JavaScript的:
window.onbeforeunload = function(e){ var e = e || window.event; // For IE and Firefox (prior to 4) if (e){ e.returnValue = 'Do you want to leave this page?'; } // For Safari and Chrome return "Do you want to leave this page?"; };@H_403_2@或者用jQuery:
$(window).bind('beforeunload',function(){ return "Do you want to leave this page?"; });