自动更新 Chrome 扩展徽章的方法

3
我正在开发一个Chrome扩展程序,它可以显示从API返回的数字。我的代码运行良好,但是它只监听DOMContentLoaded事件,因此仅在用户打开扩展程序时更新。
我希望扩展程序每次加载页面时都会检查API,而不需要更改页面内容,只需用于计时。
我不确定应该使用什么,应该使用后台页事件页还是其他东西?最好的方法是什么?
提前感谢!
1个回答

3
您所需的“每次浏览器加载页面”API是chrome.tabs.onUpdated。您将会得到以下内容:
chrome.tabs.onUpdated.addListener(function(tabId,changeInfo,tab) {
    chrome.browserAction.setBadgeText({"text":"ABCD","tabId":tabId});
});

开发的简单方法是使用后台页面,让它工作起来,然后找出需要做哪些更改将其转换为事件页面。但使用此存根,没有任何阻止您将其变成事件页面。


太棒了,我成功让我的代码工作了。我把 JS 文件变成了一个后台脚本,然后授权了它的“tabs”权限。非常感谢! - user5393970
根据您的使用情况,您可以使用“activeTab”而不是“tabs”。前者更为严格,在安装时不会引起权限警告。 - Teepeemm
我在我的扩展程序中有一个需要打开新标签页的链接,因此我需要拥有“tabs”权限。不过还是谢谢您告诉我! - user5393970
1
@The_Grits,您不需要“tabs”权限来打开一个新标签页。 - rsanchez

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接