chrome.tabs.onUpdated.addListener()多次调用

6 google-chrome-extension

我正在进行chrome扩展,我的问题是chrome.tabs.onUpdated.addListener()被多次调用.

我的代码是这样的

chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab) {
    if(changeInfo.status == 'complete' && tab.status == 'complete' && tab.url != undefined){
         doSomething
    }
});
Run Code Online (Sandbox Code Playgroud)

这与Chrome问题162543有关,它看起来是固定的,但我仍然有这个问题.

Hai*_* Ai 5

请注意,chrome.tabs.onUpdated也会为 iframe 触发,如果页面包含多个 iframe,则每个完成的 iframe 都会触发事件,尽管您已选中changeInfo.status.

为了解决这个问题,你可以看看我在这篇文章中的回答Chrome 扩展 - 页面更新两次然后在 YouTube 上删除,并使用chrome.webNavigation.onCompletedchrome.webNavigation.onHistoryStateUpdated,这取决于你的测试站点。