我想从 Chromium 的“新标签”页面中删除访问量最大的缩略图。检查该页面的内容后,我确定以下 JavaScript 行可以解决问题:
document.getElementById("most-visited").remove();
但我仍然有一个遗留问题:如何使这一行在我打开新选项卡时自动运行?想必我必须将其包装在一个函数中并注册一个事件处理程序,但我一直无法找到更准确的信息。
EDIT:
看来 Chromium 明确防止篡改“新标签”页面。我通过进行以下更改来调试灰原哀的解决方案:
-
在manifest.json中:
"matches": [
"*://*/*"
],
-
在 content.js 中:
var mv = document.getElementById("most-visited");
if (mv) mv.remove(); else window.alert("test");
并重新加载扩展。当我打开新标签时,缩略图仍然出现。然而,当我刷新不同的页面时,显示了一个消息框,上面写着“测试”。
-
Use 内容脚本 https://developer.chrome.com/extensions/content_scripts。至于匹配newtab url,请参见谷歌浏览器新标签页的URL是什么以及如何将其从manifest.json中排除 https://stackoverflow.com/questions/37287333/what-is-the-url-of-the-google-chrome-new-tab-page-and-how-to-exclude-it-from-man.
清单.json
{
"name": "Redesign",
"version": "1.0",
"manifest_version": 2,
"content_scripts": [
{
"matches": [
"*://*/_/chrome/newtab*"
],
"js": [
"content.js"
]
}
]
}
内容.js
document.getElementById("most-visited").remove();
Use 程序化注入 https://developer.chrome.com/extensions/content_scripts#pi。您可以通过收听新标签页打开事件chrome.tabs.onCreated https://developer.chrome.com/extensions/tabs#event-onCreated、检查tab url并判断是否调用chrome.tabs.executeScript
.
自定义新标签页 https://developer.chrome.com/extensions/override。您还可以自定义自己的新标签页,而无需访问最多的部分。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)