在OnClick被设置为null后,我如何在JavaScript中再次拥有OnClick行为

After OnClick is set to null how do I have Onclick behavior again in JavaScript

本文关键字:OnClick JavaScript 再次拥有 行为 设置 null      更新时间:2023-09-26

我有一个div元素,我将它的onClick事件设置为null,像这样。

child.onclick = null;

在本例中,child是一个DOM元素,表示该DIV元素。

现在onclick事件不再存在了,现在我想再次拥有它。

child.onclick = new Function();

但这种方法不起作用。我只是想让onclick的行为像它被设置为null之前一样。

有人能帮忙吗?

// save reference to the old callback function
var oldOnclickFn = child.onclick;
// set onclick to null
child.onclick = null;

// set the onclick to the function that was there before.
child.onclick = oldOnclickFn;

但是,您可能应该查看addEventListener

我建议使用addEventListenerremoveEventListener:

function handler(e){
}

添加监听器

child.addEventListener('click', handler);

删除:

child.removeEventListener('click', handler);

如Mark Walters所说,使用attachEventdetachEvent为IE <9

像这样:

document.getElementById('clickme').onclick = function(){ alert('clicked'); };
http://jsfiddle.net/pJa9W/