google-chrome-extension - 如何在创建新选项卡后仅收听 tabs.onUpdated 并阻止 tabs.onActivated?
问题描述
我的扩展同时监听 onActivated 和 onUpdated。在用户打开新选项卡的情况下,两个侦听器首先使用 onActivated 触发其函数,然后是 onUpdated。
问题是,我对两个侦听器的函数是相同的,所以我只希望 onUpdated 触发它的函数并在这种特定情况下阻止 onActivated 。
所以基本上我想要:
- 用户刷新页面:onUpdated 触发函数
- 用户更改活动选项卡:onActivated 触发功能
- 用户打开一个新选项卡:onActivated 被阻止,而 onUpdated 触发其功能
我尝试使用 onActivated 中的 if 语句来检查 onUpdated 但未能获得所需的结果。
function saveDataAndLogTime(tab) { ... };
chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab) {
if (changeInfo.status == "complete") {
saveDataAndLogTime(tab);
}
});
chrome.tabs.onActivated.addListener(function(activeInfo) {
chrome.tabs.get(activeInfo.tabId, function(tab) {
saveDataAndLogTime(tab);
});
});
任何帮助,将不胜感激。
解决方案
推荐阅读
- java - LWJGL 中的多线程块渲染
- pine-script - TradingView 的 Pine 脚本中的自引用变量
- .net - 如何为需要不同身份验证类型的 API 调用设置 Swagger?
- kubernetes - 一个 pod 通过另一个 pod 的 Liveness-Probe
- android - Android Kotlin 将 ArrayList<> 传递给第二个 Activity
- java - 我想从字符串中提取与正则表达式模式匹配的所有子字符串并将它们存储在字符串数组中
- python-3.x - Discord.py 在没有 API 的情况下抓取 twitch URL
- c# - 我的玩家轮换影响我的移动操纵杆我如何解决这个问题?
- node.js - 错误 TS2304:找不到名称“需要”。梅尔卡多帕戈
- python - 如何根据 HTML 中的用户表单输入路由 Flask url?