我目前正在尝试创建一个扩展程序来跟踪用户访问某些网站的次数。例如,如果用户打开一个选项卡并导航到 https://www.facebook.com/ ,chrome.storage
更新以反射(reflect)此更改(键的整数值 https://www.facebook.com/ 增加 1)。
现在,我正在使用 chrome.tabs.onUpdated
监听 URL 更改并相应地更新 chrome.storage
。但是,当选项卡关闭时,此监听器也会触发(导致该网站的两次更新,一次用于访问它,一次用于关闭它)。
我尝试使用 chrome.tabs.onCreated
,但我需要监听选项卡内的更改(此监听器不提供)。
我的问题是,如何仅在用户访问网站时(而不是在用户关闭网站的选项卡时)更新 chrome.storage
?
最佳答案
我刚刚意识到自己的错误。显然,我制作的另一个函数是调用扩展的存储功能,导致重复的条目。
为了将来引用,这是我用来检查用户访问的新 URL 的代码:
chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab) {
if (changeInfo.status === 'complete') {
console.log(tab.url);
}
});
关于javascript - 如何获取用户访问的任何新网站的 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27768291/