如何检查是否存在动态附加的事件侦听器?

斯塔诺:

这是我的问题:是否可以通过某种方式检查是否存在动态附加的事件侦听器?或者如何检查DOM中“ onclick”(?)属性的状态?我已经像Stack Overflow一样在互联网上搜索解决方案,但是没有运气。这是我的html:

<a id="link1" onclick="linkclick(event)"> link 1 </a>
<a id="link2"> link 2 </a> <!-- without inline onclick handler -->

然后在Javascript中,将动态创建的事件侦听器附加到第二个链接:

document.getElementById('link2').addEventListener('click', linkclick, false);

该代码运行良好,但是我所有检测该附加侦听器的尝试均失败:

// test for #link2 - dynamically created eventlistener
alert(elem.onclick); // null
alert(elem.hasAttribute('onclick')); // false
alert(elem.click); // function click(){[native code]} // btw, what's this?

jsFiddle在这里如果单击“为2添加onclick”,然后单击“ [链接2]”,则事件触发良好,但“测试链接2”始终报告为false。有人可以帮忙吗?

伊万:

无法检查是否存在动态附加的事件侦听器。

查看是否附加了事件侦听器的唯一方法是通过附加事件侦听器,如下所示:

elem.onclick = function () { console.log (1) }

然后,您可以onclick通过返回!!elem.onclick(或类似方法)测试事件监听器是否已附加

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

检查组件是否附加了事件侦听器

检查元素是否具有事件侦听器。没有jQuery

如何检查是否有附加到元素/文档的JavaScript事件侦听器/处理程序?

是否可以在不破坏后代事件侦听器的情况下附加到innerHTML?

如何避免附加多个事件侦听器?

如何/何时将事件侦听器附加到d3.js中?

如何检查侦听器事件是否是被动事件?

Javascript Vanilla-如何在ajax内容内的元素上附加事件侦听器?

如何使用事件委托而不是将事件侦听器分别附加到每个项目?

使用纯JavaScript,是否有简单的方法将事件侦听器附加到类?

使用纯JavaScript,是否有简单的方法将事件侦听器附加到类?

如何在Angular 6+中将事件侦听器正确附加到全局“窗口”?

Chrome开发者工具:如何查看HTML元素的附加事件侦听器

如何检查按钮是否具有单击侦听器

如果检查事件的状态然后添加侦听器,是否有可能错过事件?

如何删除从各个要素动态创建的事件侦听器?

如何创建检查div元素样式的事件侦听器?

如何使用jQuery map v3附加事件侦听器?

如何将事件侦听器附加到Dojo工具箱中动态添加的窗口小部件内容

检查事件侦听器是否已经在侦听对象(以避免重复操作)

如何简化 javascript 事件侦听器?

如何在没有事件侦听器的情况下检查数据是否仅存在于 firebase 数据库中一次

动态创建按钮的事件侦听器

如何删除事件侦听器

如何使用 React Native 中的事件侦听器和钩子检查是否按下/按住某个键?

删除元素的动态附加事件侦听器

如何为动态附加元素的 classList 添加事件侦听器

是否存在 McCLIM 单击侦听器?

如何在动态字符串的反应js中事件侦听器或单击侦听器?