如何删除事件处理程序文档.打开

How to remove an eventhandler document.onkeydown?

本文关键字:事件处理 程序 文档 打开 删除 何删除      更新时间:2023-09-26

我有这段代码,我需要以编程方式重写或从文档中删除onkeydown(例如使用简单条件)

document.onkeydown = function (f) {
    myMethod();
};

知道怎么做吗?

document.onkeydown = null

你可以使用jquery为你做事件处理,你使用的方法不太常用,也不允许多个订阅者。

查看此处的文档:

http://api.jquery.com/on/

示例:

$(document).on("keydown", function(){
    doStuff();
})
// unsubscribe all handlers
$(document).off("keydown");

您可以使用:删除它

document.onkeydown = null;

如果你想恢复它,你可以先把它保存到一个变量中:

var saved_keydown = document.onkeydown;
document.onkeydown = null;
//... later
document.onkeydown = saved_keydown;

最简单的方法是将其设置为空

document.onkeydown = null;

你不能删除它,你只能附加一个什么都不做的新的,比如:

document.onkeydown = function () {};

使用jQuery,您可以执行以下操作:

$(document).on('keydown', myMethod);

并删除

$(document).off('keydown', myMethod);