jQuery检查元素上是否存在onClick

Ei *_*ung 7 javascript jquery javascript-events

我找到了检查元素上是否存在事件的方法.但它不适用于未由jQuery委派的事件......

当我尝试时,

$("a").data("events");
Run Code Online (Sandbox Code Playgroud)

为了这.

<a href="#" onClick="alert('Hello, World!')" />
Run Code Online (Sandbox Code Playgroud)

它返回undefined.

有没有办法检查onQuery是否存在于jQuery的元素上?

谢谢.

Tim*_*zer 18

你可以做:

if ($('a').attr("onClick") != undefined) {}
Run Code Online (Sandbox Code Playgroud)


小智 8

做就是了:

if( myelement.onclick != null )
{
   //onclick exists
}
else
{
   //onclick doesn't exist
}
Run Code Online (Sandbox Code Playgroud)

不需要jQuery.

  • 我正在尝试测试是否已将事件监听器设置为JS单元测试的一部分...如何测试是否已设置?这不起作用,总是返回true ... console.log(document.body.click.length); document.body.addEventListener('click',function(){alert('hi')},false)console.log(document.body.click.length); (2认同)