如何检查每个打开的标签页的网址?以及如何对具有匹配网址的标签执行操作?”

时间:2019-06-11 14:27:10

标签: javascript google-chrome-extension

我是编码的新手(一些基本的VBA和一些SQL除外),我需要创建一个chrome扩展名,该扩展名将刷新包含以“ https://localhost:4848/sense/app/”开头的URL的每个选项卡,并在每个15分钟。

根据过去3个小时的经验,我需要将其放入background.js文件中,并使其成为持久性文件,然后使用SetInterval调用该函数。不幸的是,我基本上不知道如何获取不同的字符串,以及如何在不同的选项卡上强制刷新

我有一些代码来获取选项卡和所有URL的数量,但这给了我太多信息,而且我不知道为那些具有匹配URL的人设置条件:

'

chrome.windows.getAll({populate: true}, function(allWindows)
{console.log(allWindows);
});

`

我希望它以https://localhost:4848/sense/app/开头的URL刷新每个标签页

1 个答案:

答案 0 :(得分:1)

我宁愿使用chrome.alarms API,因为您需要间隔几分钟。因此,您无需保留持久的后台页面。

您的代码将如下所示:

chrome.alarms.create('my_alarm', {
    periodInMinutes: 15
});

chrome.alarms.onAlarm.addListener(alarm => {
    if (alarm && alarm.name === 'my_alarm') {
        chrome.tabs.query({url: 'https://localhost:4848/sense/app/*'}, foundTabs => {
            if (foundTabs && foundTabs.length) {
                foundTabs.forEach(tab => chrome.tabs.reload(tab.id));
            }
        });
    }
});