gpt4 book ai didi

javascript - 切换 Chrome 标签页并每 5 秒刷新一次 - javascript

转载 作者:行者123 更新时间:2023-11-28 05:52:08 29 4
gpt4 key购买 nike

我正在尝试使用 Chrome 选项卡 API 构建一个 Chrome 扩展,它将循环浏览窗口中所有打开的选项卡,并每 n 秒刷新每个选项卡。我在每 5 秒迭代一次 for 循环时遇到问题。我尝试了几种不同的设置超时等方法,但最终要么循环根本不运行,要么得到无限循环。我是 JavaScript 新手。任何帮助将不胜感激!

背景.js

chrome.browserAction.onClicked.addListener(function(tab) {
// Send a message to the active tab
chrome.tabs.query({currentWindow: true}, function(tabs) {
var foundSelected = false;
(function switch() {
for(i = 0; i <= tabs.length; i++){
if(i == tabs.length){
i = 0;
}
if (tabs[i].active){
foundSelected = true;
}
// Finding the next tab
else if (foundSelected){
// Selecting the next tab.
chrome.tabs.update(tabs[i].id, {active: true});
chrome.tabs.reload(tabs[i].id);
setTimeout(switch, 5000);
}
}
})();


// var activeTab = tabs[0];
chrome.tabs.sendMessage(activeTab.id, {"message": "clicked_browser_action"});
});
});

内容.js

chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) {
if( request.message === "clicked_browser_action" ) {

chrome.tabs.update(tabId, {selected: true});
}
}
);

我意识到已经有扩展可以做到这一点。我正在创建自己的项目作为一种学习体验并更好地控制功能。

最佳答案

创建background.js,如下所示。我认为它会正常工作。

background.js

/* Below code start background.js when you start your browser
* and sw function work after every 5 second and reload every tab.
*/
function sw()
{
chrome.tabs.query({currentWindow: true},function(tabs){
var i=0;
console.log(tabs.length);
for(i=0;i<=tabs.length;i++)
{
chrome.tabs.reload(tabs[i].id);
}

})
};
setInterval(sw,5000);

关于javascript - 切换 Chrome 标签页并每 5 秒刷新一次 - javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37996288/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com