浏览网页时如何更改内容


how can I change the content when browsing a web page?

我想写一个程序来更改浏览网页时的内容,并假设添加以下功能:

1) 突出显示一些关键字

2) 更改关键字的背景

3) 当鼠标在上面移动时,会给出一个消息气泡

我有一些想法,但我不确定哪一个会奏效:

  1. 为firefox编写一个插件
  2. 为chrome编写扩展
  3. 使用php编写一个代理来更改被代理的网页的内容
  4. 将javascript注入网页
  5. 其他解决方案

哪一个能解决这个问题?哪一个最好?

提前谢谢。

尝试使用bookmarklet。它们只是伪装成用户书签栏中书签的javascript片段。当用户点击书签时,javascript代码被注入并在当前网站上运行。你不需要让你的用户下载额外的软件,也不需要被束缚在特定的浏览器上。

这里有一个很好的链接让你开始http://net.tutsplus.com/tutorials/javascript-ajax/create-bookmarklets-the-right-way/

它是1+4或2+4(或1+2+4),您必须编写一个将被注入页面的脚本,它可以用作Firefox Greasemonkey脚本或Chorme扩展。

与Firefox中需要Greasemonkey才能使脚本工作不同,一个简单的脚本文件可以直接用作Chrome扩展,只需将其拖动到扩展窗口即可。有了一些关于如何组织扩展的官方文档,你就可以将其打造成一个完整的Chrome扩展。

一个示例脚本,它将只在您使用stackoverflow时注入脚本:

script.user.js

if(document.URL.indexOf("http://stackoverflow.com")!=-1) {
    var d = document.createElement("div");
    d.innerHTML = "Hello World! This is my first injected script";
    d.className = "red"; // supposing it's defined, wouldn't hurt anyways
    // otherwise
    d.style.color = "#f00";
    document.body.appendChild(d);
}

保存您的文件并将其拖动到Chrome上的"扩展名"窗口,然后重新加载stackoverflow。