Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.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 使用jquery从HTML元素检测事件_Javascript_Jquery_Html - Fatal编程技术网

Javascript 使用jquery从HTML元素检测事件

Javascript 使用jquery从HTML元素检测事件,javascript,jquery,html,Javascript,Jquery,Html,我有一个遗留代码,它类似于 <a href='#' onclick="javascript:Domystuff(); return false;"> Some text<a> 一些文本 我在网站中添加了一个jQuery用于其他目的,现在我想检测给定的标记是否有“onclick”事件可用。但我不知道该怎么做。我看到大多数人建议使用$(“a”).data('events'),但这对我不起作用,而且总是给出未定义的。但是,当我调用$(“a”).click()时,它会执行Do

我有一个遗留代码,它类似于

<a href='#' onclick="javascript:Domystuff(); return false;"> Some text<a>
一些文本
我在网站中添加了一个jQuery用于其他目的,现在我想检测给定的标记是否有“onclick”事件可用。但我不知道该怎么做。我看到大多数人建议使用
$(“a”).data('events')
,但这对我不起作用,而且总是给出未定义的。但是,当我调用
$(“a”).click()
时,它会执行
Domystuff()
函数

知道我如何检测像HTML属性事件一样的
onclick
onchange
onblur
是否存在吗


编辑:我忘了提到,我不只是想检测属性中的所有事件,而是希望元素上的所有事件用于单击、模糊或更改。希望我现在说清楚。谢谢

试试这样的

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

试试这样的

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

试试这样的

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

试试这样的

 if ($('a').attr("onClick") != undefined) {}
毕竟,即使EventHandler也是HTML属性。 但是,这不会检测jQuery附加的EventHandler,因此:

 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
    }
 }
var ahrefs=$('a');
对于(变量i=0;i
很简单,不是吗

毕竟,即使EventHandler也是HTML属性。 但是,这不会检测jQuery附加的EventHandler,因此:

 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
    }
 }
var ahrefs=$('a');
对于(变量i=0;i
很简单,不是吗

毕竟,即使EventHandler也是HTML属性。 但是,这不会检测jQuery附加的EventHandler,因此:

 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
    }
 }
var ahrefs=$('a');
对于(变量i=0;i
很简单,不是吗

毕竟,即使EventHandler也是HTML属性。 但是,这不会检测jQuery附加的EventHandler,因此:

 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
    }
 }
var ahrefs=$('a');
对于(变量i=0;i

很简单,不是吗?

相关问题:@simone不太相关,正如我看到的,因为我想通过代码检查所有事件,而不是在调试环境中。相关问题:@simone不太相关,正如我看到的,因为我想通过代码检查所有事件,而不是在调试环境中。相关问题:@simone不太相关,正如我看到的,因为我想通过代码检查所有事件,而不是在调试环境中。相关问题:@simone不太相关,正如我看到的,因为我想通过代码检查所有事件,而不是在调试环境中。您也可以尝试在选择器中更具体一些
$(“a”)
相当贪婪,但是如果添加一个类
$(“a.myClass”)
,它只会命中该元素。您还可以尝试在选择器中更具体一些
$(“a”)
相当贪婪,但是如果添加一个类
$(“a.myClass”)
,它只会命中该元素。您还可以尝试在选择器中更具体一些
$(“a”)
相当贪婪,但是如果添加一个类
$(“a.myClass”)
,它只会命中该元素。您还可以尝试在选择器中更具体一些
$(“a”)
相当贪婪,但如果添加一个类
$(“a.myClass”)
,它只会命中该元素。+1,有趣的是我已经想到了它,但这并不能完全解决我的问题。但这的确是一种选择。实际上,这是我的错,我没有提到我想要检测所有事件,不管它们如何附加到元素,而不仅仅是属性。至少是那些从jquery和attribute中添加的人。+1,有趣的是我已经想到了它,但这并不能完全解决我的问题。但这的确是一种选择。实际上,这是我的错,我没有提到我想要检测所有事件,不管它们如何附加到元素,而不仅仅是属性。至少是那些从jquery和attribute中添加的人。+1,有趣的是我已经想到了它,但这并不能完全解决我的问题。但这的确是一种选择。实际上,这是我的错,我没有提到我想要检测所有事件,不管它们如何附加到元素,而不仅仅是属性。至少是那些从jquery和attribute中添加的人。+1,有趣的是我已经想到了它,但这并不能完全解决我的问题。但这的确是一种选择。实际上,这是我的错,我没有提到我想要检测所有事件,不管它们如何附加到元素,而不仅仅是属性。至少是从jquery和属性中添加的。