我以前使用的代码是:
$(document).on('click', 'a[href^="http"]', () => {});
拦截链接点击。出于复杂的解释原因,我必须在加载 jQuery之前将代码移动到某处。如何在纯JavaScript中编写此代码?
答案 0 :(得分:1)
根据上面的评论,您可以使用vanila JavaScript将上面的事件绑定jQuery代码转换为以下内容,
var links = document.querySelector('a[href^="http"]');
links.forEach(function(link) {
button.addEventListener("click",function(e){
// handling logic
}, false);
} )
上面的代码将事件处理程序绑定到每个a
元素,这可能很昂贵。
创建活动代理
向文档添加事件处理程序,并查看目标是否是您想要的链接
document.addEventListener("click", function(e) {
// check the target has an attribute of `a[href^="http"]`
if(e.target && e.target.nodeName == "a") {
}
});
上面的代码使用事件冒泡来捕获文档中的单击事件。