javascript中是否有方法检测元素是否附加了任何事件?
我在页面上有一个链接列表,有时它们会附加事件,有时则没有(它们只是什么都不做)。我想说,‘如果这个元素没有事件处理程序(基本上它什么都不做),那么就给它添加一个disabled类。我在谷歌上搜索了一下,但没有找到任何用于检测事件处理程序的东西。有人知道这样做的方法吗?这会给你一个事件列表:javascript中是否有方法检测元素是否附加了任何事件?,javascript,jquery,html,Javascript,Jquery,Html,我在页面上有一个链接列表,有时它们会附加事件,有时则没有(它们只是什么都不做)。我想说,‘如果这个元素没有事件处理程序(基本上它什么都不做),那么就给它添加一个disabled类。我在谷歌上搜索了一下,但没有找到任何用于检测事件处理程序的东西。有人知道这样做的方法吗?这会给你一个事件列表: jQuery(theElement).data('events'); 你可以试试这个: $("element").data("events"); 我使用以下在IE、FF和Chrome中测试过的工具: if
jQuery(theElement).data('events');
你可以试试这个:
$("element").data("events");
我使用以下在IE、FF和Chrome中测试过的工具:
if(typeof document.getElementById("elementname").onchange === "function"){
alert("has a function");
} else {
alert("no function");
}
重复?->重复的问题……好的,我把它放在控制台$(“#viewSaleSheet”).data(“事件”)中,它返回了一个对象,该对象在其内部有一个单击,但此链接没有附加任何单击事件。为什么要这样做?@Tanya是
#viewSaleSheet
一个锚定标记?这就是:@Tanya因为你有一个href
,控制台将其视为onclick事件,删除该href,现在尝试$(“#viewSaleSheet”).data(“events”)
。您将不会看到任何绑定的事件。