Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在OnClick设置为null之后,如何在Javascript中再次执行OnClick行为_Javascript_Dom_Javascript Events - Fatal编程技术网

在OnClick设置为null之后,如何在Javascript中再次执行OnClick行为

在OnClick设置为null之后,如何在Javascript中再次执行OnClick行为,javascript,dom,javascript-events,Javascript,Dom,Javascript Events,我让Div元素和Im将其onClick事件设置为null,如下所示 child.onclick = null; child.onclick = new Function(); 在本例中,child是表示该DIV元素的dom元素 现在onclick事件已经不存在了,现在我想再这样做一次 child.onclick = null; child.onclick = new Function(); 但这样做是行不通的。我只想让onclick行为保持在设置为null之前的状态 有人能帮忙吗 谢谢,

我让Div元素和Im将其onClick事件设置为null,如下所示

child.onclick = null;
child.onclick = new Function();
在本例中,child是表示该DIV元素的dom元素

现在onclick事件已经不存在了,现在我想再这样做一次

child.onclick = null;
child.onclick = new Function();
但这样做是行不通的。我只想让onclick行为保持在设置为null之前的状态

有人能帮忙吗

谢谢, Dil.

像这样:

document.getElementById('clickme').onclick = function(){ alert('clicked'); };

我建议使用
addEventListener
removeEventListener

function handler(e){

}
要添加侦听器,请执行以下操作:

child.addEventListener('click', handler);
删除:

child.removeEventListener('click', handler);
注意正如马克·沃尔特斯所说,使用
attachEvent
detachEvent
来表示IE<9

// 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;

但是,您可能应该查看。

尝试
document.getElementById('myDiv')。onclick=function(){//您的代码在这里}如果您正在谈论动态删除和附加onclick功能。当然,如果您有一个命名函数
function myFunc(){//code here}
一旦设置了
child.onclick=null
,您就可以使用
child.onclick=myFunc重新附加所需的功能?一旦onClick设置为null,我们仍然可以单击DIV,但什么也没有发生。我只想要onClick事件的默认行为。我没有自己定义的任何函数。请注意,IE不支持
addEventListener
removeEventListener
。本页包含一个垫片,它为这些功能添加了浏览器支持。如果IE一旦onClick设置为null,我们仍然可以单击DIV,但什么也没有发生。我只想要onClick事件的默认行为。我没有自己定义的任何函数。@DilanAlex如果没有侦听器连接到click事件,请保留它,为什么要将其设置为null?如果已附加侦听器,并且您想要默认行为,则使用
removeEventListener