我希望在显示任何HTML页面之前隐藏任何与模式匹配的文本。

我用Greasemonkey尝试了类似的东西:

var html = document.body.innerHTML;
html = html.replace( /some pattern/g, '???' );
document.body.innerHTML = html;

我要隐藏的文本被'???'正确替换,但是在加载页面的短暂时间内,我可以看到原始文本。正如crescentfresh所说,用Greasemonkey无法修复它。

我知道我可以使用像 Proximodo 这样的代理来解决它,但我更愿意避免安装它。

最简单的方法是什么,知道它必须适用于Firefox?

对于那些感兴趣的人,我想用它来隐藏我女朋友电脑上任何页面的价格,让她选择礼物。

有帮助吗?

解决方案

有了扩展程序,您可以这样做。

我不记得确切,但有可能 LiveHttpHeaders 在访问浏览器之前捕获http流量,使您能够删除所需内容。

此外,如果不是等待整个页面加载而是在 DOMNodeInserted 事件中替换它,它可能足够快,不能显示实际内容。

另外,如果您之前从未做过Firefox扩展,请不要惊慌!甚至有一个 greasemonkey扩展编译器可以完成肮脏的工作,并为您提供良好的服务基础开始。我会这样做,然后寻找一个window.onload事件,在那里,而不是greasemonkey代码,将 DOMNodeInserted 事件附加到文档中。

另外(第四次编辑!),她真正想要的是你读她的想法并选择她想要的礼物XD

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top