我有一个要在每个页面上运行的脚本。要做到这一点非常简单,我只需设置 @include *
即可完成。它显示在每个页面上,由我在代码中分配给它的热键组合激活。它按预期工作,没有问题。
但是,我希望它也可以在空白选项卡上使用。如果你有一个包含实际内容的页面(如果你愿意的话,文档分配)它工作正常,我想它有一些东西可以注入(inject)脚本并运行,我明白了。我想知道并希望是否有办法让脚本也 Hook 空白标签页。
我对此进行了大量研究但无济于事,我希望我这里的一些 friend 对 JS 有更广泛的了解,也许在这方面的战壕中获得的经验可能会提供解决方案。我将不胜感激。
最佳答案
参见 the docs at "Include and exclude rules, Extra schemes" .对于在空白选项卡上运行的脚本,您现在必须明确设置 @include about:blank
。
例如:
// ==UserScript==
// @name _Very noisy script
// @include about:blank
// @include *
// ==/UserScript==
alert ("Fire on blank");
但是, Firefox now uses about:newtab
by default ,并且 Greasemonkey 当前不认为 about:newtab
是“Greaseable”。 (尽管如此,我会考虑为此接受一个拉取请求。)
因此,要让脚本在空白标签页上触发,您目前必须将这些空白标签页设置回使用 about:blank
。
通过打开 about:config
并将 browser.newtab.url
设置为 about:blank
来做到这一点。
关于javascript - GreaseMonkey @include 约 :newtab,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18395034/