在我的Firefox Addon的内容脚本中,我有以下代码:
window.addEventListener('click', function(event) {
event.preventDefault();
var t = event.target;
var nearestATag = t.nodeName === 'A'
? t
: findParentByTagName(t, 'A');
if (nearestATag !== undefined) {
self.port.emit('click-link', nearestATag.getAttribute('href'));
}
});
我想阻止在运行脚本的面板中打开URL,而是在新浏览器的标签中打开它。
如果鼠标左键单击,它可以完美地工作,但在鼠标滚轮点击的情况下不能正常工作 - URL打开两次,所以似乎preventDefault
在这里没有做任何事情。
在event.stopPropagation();
之后添加event.stopPropagation();
,但我真的不明白为什么。
那你可以帮我理解为什么吗?