Tim*_*eTq 13 javascript google-chrome google-chrome-extension referenceerror google-chrome-devtools
我正在尝试删除监听器。在控制台中,下面的代码正在运行。当我在 Chrome 扩展中使用代码时,我得到:“Uncaught ReferenceError:getEventListeners 未定义”。为什么会出现这种情况?是否有与“getEventListeners”功能等效的函数?
document.addEventListener('click', fireContentLoadedEvent, false);
function fireContentLoadedEvent () {
console.log ("DOMContentLoaded");
for (let i = 0; i < document.getElementsByClassName("someClass").length; i++) {
plusButton = document.getElementsByClassName("someClass")[i]
if ( getEventListeners(plusButton)["click"].length > 1) {
plusButton.removeEventListener("click", getEventListeners(plusButton).click[1].listener);
}
}
}
Run Code Online (Sandbox Code Playgroud)
getEventListeners
是控制台 API的一部分,在浏览器控制台之外不可用。
正如评论中提到的,您可以通过在调用该addEventListener
方法之前监视该方法来复制它,例如:https: //stackoverflow.com/a/6434924/288906
在浏览器扩展中,您还需要确保在主世界(而不是孤立的世界)中运行此代码
归档时间: |
|
查看次数: |
13240 次 |
最近记录: |