我有一个网页,其中包含所有正文点击事件的挂钩:
if (0 == $('body').hasEventListener("click.custom").length) {
$('body').bind("click.custom", function(e) {
console.log(e.target);
});
}
我希望此方法输出所有点击的元素,但我遇到了有其他事件处理程序的问题。请考虑以下代码:
<a href="www.stackoverflow.com" class="my-link">Click</a>
<script>
$(document).on("click", ".my-link", function(e) {
alert("not allowed to click this");
e.preventDefault();
});
</script>
最终发生的事情是preventDefault调用阻止我的自定义事件运行 我想要将用户重定向到要阻止的链接的默认事件,但我希望触发任何自定义事件。
当然,可以从任何地方手动触发每个事件,防止调用默认值,但有没有通用的方法呢?
谢谢!
答案 0 :(得分:0)
答案 1 :(得分:0)
肯定是我的错误 - 我定义了一个自定义的preventDefault,它包含:
e.stopPropagation();
e.stopImmediatePropagation();
显然这就是问题所在。谢谢!