我继承了一个在弹出窗口中实现禁用 F5 的应用程序。
<body onkeydown="disableF5();">
但是,如果用户单击窗口正文下方并按 F5,页面仍会刷新。
我将函数调用移至
<html onkeydown="disableF5();">
现在 F5 被禁用,一切都按预期工作。
然而,这不是放置代码的最佳位置,如果我可以在我的代码中执行如下所示的操作,我会更喜欢它<script>
部分,以便我可以添加注释,或许还可以将其移动到外部文件。
$("html").attr("onkeydown", "disableF5();");
然而,这段 jQuery 代码并没有按预期工作,所以我目前陷入困境。
有没有办法可以设置属性<html>
元素?
Edit:我想我应该把我的disableF5()函数放在这里。
function disableF5() {
if (window.event && window.event.keyCode == 116) {
window.event.cancelBubble = true;
window.event.returnValue = false;
window.event.keyCode = 0;
window.status = "F5 is disabled on all popups";
return false;
}
}
$('html').bind('keydown', function(){ disableF5(); });
See the $.bind() 的文档 http://api.jquery.com/bind/
Edit –适度详细的解释:
HTML onstuff
属性在 DOM 加载时进行评估。事后添加它们没有任何效果。因此,必须使用正确的 JS 事件绑定。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)