我想从Chromium的“新标签页”中删除访问量最大的缩略图。在检查了该页面的内容之后,我确定以下JavaScript行可以解决这个问题:
document.getElementById("most-visited").remove();
但是我还有一个问题:当我打开一个新标签时,如何使这条线自动运行?大概我必须将它包装在一个函数中并注册一个事件处理程序,但我一直无法找到更准确的信息。
修改
似乎Chromium明确禁止篡改“新标签页”。我通过进行以下更改调试了Haibara Ai的解决方案:
在manifest.json中:
"matches": [
"*://*/*"
],
在content.js中:
var mv = document.getElementById("most-visited");
if (mv) mv.remove(); else window.alert("test");
重新加载扩展程序。当我打开一个新标签时,缩略图仍然出现。然而,当我刷新一个不同的页面时,会显示一个显示“test”的消息框。
答案 0 :(得分:2)
使用Content scripts。至于匹配newtab网址,请参阅What is the URL of the google chrome new tab page and how to exclude it from manifest.json。
的manifest.json
{
"name": "Redesign",
"version": "1.0",
"manifest_version": 2,
"content_scripts": [
{
"matches": [
"*://*/_/chrome/newtab*"
],
"js": [
"content.js"
]
}
]
}
content.js
document.getElementById("most-visited").remove();
使用Programmatic injection。您可以通过chrome.tabs.onCreated
收听新标签页打开的活动,查看标签网址并确定是否致电chrome.tabs.executeScript
。
Customize new tab page。您还可以自定义自己的新标签页,而不会访问最多的部分。