我有一个包含所有正文点击事件的网页:
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 调用阻止我的自定义事件运行。
我希望阻止将用户重定向到链接的默认事件,但我希望触发任何自定义事件。
当然,可以从任何地方手动触发每个事件以防止调用默认值,但是有没有通用的方法呢?
谢谢!