我目前正在尝试创建一个跟踪用户访问某些网站的次数的扩展程序。例如,如果用户打开标签并导航到https://www.facebook.com/,则会chrome.storage
更新以反映此更改(键https://www.facebook.com/的整数值增加1)。
目前,我正在使用chrome.tabs.onUpdated
来监听网址更改并相应地更新chrome.storage
。但是,当关闭选项卡时,此侦听器也会触发(导致该网站的两次更新,一次用于访问它,另一次用于关闭它)。
我尝试使用chrome.tabs.onCreated
,但我需要监听标签内的更改(此听众无法提供)。
我的问题是,如何在用户访问网站时更新chrome.storage
(而不是在用户关闭网站标签时)?
答案 0 :(得分:1)
我刚刚意识到自己的错误。显然,我做的另一个功能是调用扩展的存储功能,导致重复的条目。
为了将来参考,这是我用来检查用户访问的新网址的代码:
chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab) {
if (changeInfo.status === 'complete') {
console.log(tab.url);
}
});