gpt4 book ai didi

javascript - chrome.webNavigation.onCompleted - 多次触发事件

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:41:25 31 4
gpt4 key购买 nike

我加载 plagin 以将代码注入(inject)页面, list 代码:

{
"name": "any",
"version": "1.0",
"permissions": [
"webNavigation",
"*://*/*"
],
"background": {
"scripts": ["background.js"],
"persistent": false
},
"manifest_version": 2
}

和 background.js:

chrome.webNavigation.onCompleted.addListener(function(details) {
chrome.tabs.executeScript(details.tabId, {
code: 'console.log("A")'
});
});

问题是页面加载后事件触发了几次,我只想要事件一次。我的错误是什么?我将不胜感激。

最佳答案

chrome.webNavigation.onCompleted 即使在子框架中出现导航时也会被调用。仅捕获一次的一种方法是使用帧 ID 条件来实现您的代码。 frame id = 0 对应于父框架。你的代码看起来像:

chrome.webNavigation.onCompleted.addListener(function(tab) {
if(tab.frameId==0){
//logic
}
});

此处提供详细文档:https://developers.chrome.com/extensions/webNavigation

关于javascript - chrome.webNavigation.onCompleted - 多次触发事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37779142/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com