繁体   English   中英

使用jQuery从HTML元素检测事件

[英]Detecting Event from HTML Element using jquery

我有一个类似的旧代码

<a href='#' onclick="javascript:Domystuff(); return false;"> Some text<a>

我在网站中出于其他目的添加了jQuery,现在我想检测给定的标记是否具有“ onclick”事件可用。 但是我没有发现该怎么做。 我看到大多数建议使用$("a").data('events')但这对我不起作用,并且总是给出undefined。 但是,当我调用$("a").click()它会执行Domystuff()函数。

任何想法如何检测是否存在onclickonchangeonblur类的HTML属性事件。

编辑:我忘了提及我不只是要检测来自属性的所有事件,而是要元素上的所有事件进行单击或模糊或更改。 希望我现在说清楚。 谢谢

if($('a').attr('onclick')) { // exists
}

毕竟,事件处理程序都是HTML属性。 尽管如此,它仍无法检测到jQuery附加的事件处理程序,因此:

 var ahrefs = $('a');
 for(var i = 0;i < ahrefs.length;i++) {
    var node = ahrefs.get(i);

    if(typeof node.onClick == function) { // has an attached event handler
    }
 }

很简单,不是吗?

尝试这样的事情

 if ($('a').attr("onClick") != undefined) {}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM