我怎么可以重写的onkeydown html元素吗?

我继承了实现在一个窗口弹出禁用F5的应用程序。

<body onkeydown="disableF5();">

然而,如果用户点击体下方的窗口,并按下F5页面将仍然刷新。

我提出的函数调用

<html onkeydown="disableF5();">

现在F5被禁用,一切工作正常。

然而,这是不是有代码的最佳地方,我宁愿它,如果我可以做类似下面在我的<script>部分,因此我可以添加注释,也许它移动到外部文件。

$("html").attr("onkeydown", "disableF5();");

jQuery的这一片段但如预期,所以我现在被困在此刻不起作用。

有没有一种方法,我可以设置的属性<html>元素?

编辑:我想我会扔我的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(); });

见$ .bind的文档()

编辑-适度详细的解释:

的HTML onstuff作为DOM的装载属性进行评估。 如果把它们-呈文后没有任何效果。 因此,适当的JS事件绑定必须使用。

这在最新的Chrome和FireFox和似乎比清洁bind对我说:

$(document.documentElement).keydown(disableF5);

$('html').bind('keydown', function() { disableF5(); }));

分类:jQuery的 时间:2015-03-15 人气:0
本文关键词: HTML和jQuery
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 1.529 (s). 10 q(s)