Javascript 在显示任何HTML页面之前,替换其中的一些文本
我想在显示任何HTML页面之前隐藏与模式匹配的任何文本 我用Greasemonkey试过类似的东西:Javascript 在显示任何HTML页面之前,替换其中的一些文本,javascript,html,firefox,dom,greasemonkey,Javascript,Html,Firefox,Dom,Greasemonkey,我想在显示任何HTML页面之前隐藏与模式匹配的任何文本 我用Greasemonkey试过类似的东西: var html = document.body.innerHTML; html = html.replace( /some pattern/g, '???' ); document.body.innerHTML = html; 我要隐藏的文本已正确替换为“?”,但在加载页面的短暂时间内,我可以看到原始文本。正如crescentfresh所说,它不能用Greasemonkey来修复 我知道我可
var html = document.body.innerHTML;
html = html.replace( /some pattern/g, '???' );
document.body.innerHTML = html;
我要隐藏的文本已正确替换为“?”,但在加载页面的短暂时间内,我可以看到原始文本。正如crescentfresh所说,它不能用Greasemonkey来修复
我知道我可以使用代理来解决它,但我更愿意避免安装它
知道它必须在Firefox上工作,最简单的方法是什么
对于那些感兴趣的人,我想用它在我女朋友电脑的任何页面上隐藏价格,让她选择礼物。通过一个扩展,你可能可以这样做 我记不清了,但有可能在进入浏览器之前捕获http流量,使您能够删除所需内容 此外,如果您不等待整个页面加载,而是在
domandeinserted
事件中替换它,则速度可能足够快,不会显示实际内容
此外,如果您以前从未做过Firefox扩展,请不要惊慌!甚至有一个肮脏的工作,并为你提供了良好的开端。我会这样做,然后查找window.onload事件,然后在文档中附加一个DOMNodeInserted
事件,而不是greasemonkey代码
还有(第四次编辑!),她真正想要的是你读懂她的心思,选择她想要的礼物XDgreasemonkey脚本在DOM加载并准备好与之交互后运行;这就是它的本质。考虑到您正在执行的是
document.body.innerHTML=…
(导致非常昂贵的重画操作),闪烁是不可避免的。@crescentfresh-您应该将此作为实际答案。我会升级的。看来我得安装Poximodo了…@Matt:谢谢。也许爵士乐可以简单地回答并接受Poximodo sol'n(我不知道那是什么)。+1代表最后一行。。哦,这些程序员!!!我将尝试对此进行自己的扩展。要是我能延长时间读懂她的心思就好了!