Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/416.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
什么';javascript中.click()和.onclick()的区别是什么?_Javascript_Click - Fatal编程技术网

什么';javascript中.click()和.onclick()的区别是什么?

什么';javascript中.click()和.onclick()的区别是什么?,javascript,click,Javascript,Click,两者之间有什么区别 document.getElementById("id").click(); 及 ?click是HTML元素上的一个函数,您可以调用它来触发它们的click处理程序:元素。click() onclick是一个反映onclick属性的属性,允许您在单击发生时将“DOM0”处理程序附加到元素:element.onclick=function(){/*…*/}(现代的等价物是addEventListener(“click”,…)[或attachEvent,在IE的过时版本上])如

两者之间有什么区别

document.getElementById("id").click();


click
是HTML元素上的一个函数,您可以调用它来触发它们的click处理程序:
元素。click()


onclick
是一个反映
onclick
属性的属性,允许您在单击发生时将“DOM0”处理程序附加到元素:
element.onclick=function(){/*…*/}
(现代的等价物是
addEventListener(“click”,…)
[或
attachEvent
,在IE的过时版本上])如果调用
onclick
element.onclick()
),则会调用附加到它的函数,但不会调用附加了现代方法的处理程序

例如,
点击
触发假点击;另一个用于设置单击处理程序。(如果调用
onclick
,它将只调用通过旧的DOM0机制连接的处理程序。)

例如:

var btn=document.querySelector(“输入[type=button]”);
//向它添加一个现代处理程序
btn.addEventListener(“单击”,函数(){
log(“调用的现代处理程序”);
});
//向其中添加一个过时的DOM0处理程序
btn.onclick=函数(){
log(“调用了DOM0处理程序”);
};
//呼叫“点击”`
log(“调用click():”;
点击();
//调用“onclick”(这将是非常不寻常的)
log(“调用onclick():”;
btn.onclick()

@rene:不,如果你仔细阅读的话就不会了。
onclick
是一个属性,所以应该作为
文档访问它。getElementById(“id”)。onclick
,对吗?不会
document.getElementById(“id”).onclick()调用返回的函数吗?但行为可能会有所不同。@AjayBrahmakshatriya:是的,会的。我会澄清的。另外,
这两种情况下不是都不一样吗?在
单击()
中,它将是附加处理程序的对象。在
onclick()。(我对此不确定)。@AjayBrahmakshatriya:“这将是一个正常的函数调用,它将从调用上下文中继承。”这不是
的工作方式。更多:(不,
如果调用的函数不是绑定函数或箭头函数,
在这两种情况下都是相同的。)谢谢!我对这个案子没有把握。
document.getElementById("id").onclick();