我正在开发一个浏览器扩展,并且想要拦截tweet按钮的click事件,如下图所示:
我设法这样获得了元素节点:
document.querySelector('div[data-testid="tweetButton"]')
这是我试图做的:
tweetButton.addEventListener("click", function() {})
tweetButton.removeEventListener("click", function() {})
document.addEventListener
添加全局侦听器,然后检查选择器。回调被触发,但是即使我做了event.preventDefault()
和event.stopImmediatePropagation()
,XHR仍然会通过。事件侦听器所附加的对象可能不是此对象,但在HTML中它具有“按钮”角色,因此应该是该对象。
我可以通过听Ajax请求来实现相同的目标吗?
答案 0 :(得分:0)
毕竟,解决方案2似乎是正确的:
let tweetButton = document.querySelector('div[data-testid="tweetButton"]');
tweetButton.addEventListener("click", function(event) {
event.preventDefault();
event.stopImmediatePropagation();
});
您可以在这里找到open-sourced code。