如何使用Greasemonkey替换整个页面?

时间:2009-12-19 07:47:49

标签: replace greasemonkey

有没有办法用Greasemonkey替换整个网页?

基本上是重定向,但地址栏仍然显示原始地址。

我希望显示原始地址,但我想在没有人知道的情况下从我的硬盘加载修改过的网页。

3 个答案:

答案 0 :(得分:4)

嗯......这应该改变页面内容

unsafeWindow.document.documentElement.innerHTML='DEFACED!!!!!!1!!!'

要获取这些内容,您可以依赖GM_xmlhttpRequest()

这里真正的问题是在什么时候触发了 greasemonkey;那是:太晚了,用户不会注意到发生了什么

我不确定你在这里想要达到的目标。 这是恶作剧还是实验室用户访问方案?

无论如何,用户不要注意到你最终需要做到这两个中的一个:

  1. 在加载过程中编写一个完整的 firefox扩展程序在GM之前启动
  2. 添加非透明代理

答案 1 :(得分:0)

是的,你可能会这样做。它有多难取决于源页面和目标页面的复杂程度。如果它们都是简单的html,那将很容易。如果其中一个或两者都有很多花哨的样式和脚本,那可能有点棘手,但它有可能。

一种简单的方法可能是创建一个填满整个页面的iframe?

或者,循环遍历html的“body”标签的所有子项并删除它们;然后插入iframe,或将其他页面的内容作为innerHTML插入。

答案 2 :(得分:-2)

我能看到这样做的最简单方法是删除正文内容,插入iframe(100%x100%),并将其来源设置为您选择的路径。