我正在尝试制作一个将所有选项卡崩溃在Chrome窗口中的扩展程序,以便它们在打开Chrome时不会加载(当有太多选项卡时)。
但是当我尝试使用
chrome.tabs.update(null, {url:"chrome://crash"})
或
chrome.tabs.update(null, {url:"about:crash"})
他们不工作,虽然使用
chrome.tabs.update(null, {url:"chrome://tasks"})
效果不错
有什么解决方法吗?
当这也有效时,我想循环所有打开的选项卡来做同样的事情,但我不知道如何做。
最佳答案
您可以简单地获取所有事件窗口并循环浏览其选项卡,然后将其 url 更改为 data:text/html
chrome.windows.getAll({populate : true}, function (window_list) {
var list = [];
for(var i=0;i<window_list.length;i++) {
list = list.concat(window_list[i].tabs);
}
for(var y=0;y<list.length;y++) {
var jsRunner = {'code': 'window.stop()'};
chrome.tabs.executeScript(list[y].id, jsRunner);
if(!list[y].url.match(/data\:text\/html/gi)){
chrome.tabs.update(list[y].id, {url:"data:text/html,<meta charset=\"utf-8\"><title>" + list[y].title + "</title><h1 style='text-align:center;'><a style='text-decoration:none;' href='" + list[y].url + "'>" + list[y].url + "</a></h1>"});
}
}
});
您可以下载扩展并试用http://d.pr/f/wXaZ
关于google-chrome - 强制 chrome 标签崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10951748/