我想更改网页的内容,以根据网页添加更改的元素。
e.g。当用户访问网站http://www.google.com时,我想显示带有“你在http://www.google.com”文本的div元素,但当用户转到http://www.yahoo.com时,div应该更改并且显示“你在http://www.yahoo.com”。
我正在寻找的是某种开头的例子(我希望不是第一个想到这种技巧的人)。
答案 0 :(得分:2)
这是在页面上获取内容的一种方法,以显示当前的URL。这不是正确的方法,但它会从一开始就给出一些明显的改变。
这些步骤将从上面提到的hello world example开始,并修改它以在网页上注入一些文字。
获取原始文件
插入新代码
菜单项工具|你好,世界! |你好,世界!将触发此方法:
XULSchoolChrome.BrowserOverlay = { /** * Says 'Hello' to the user. */ sayHello : function(aEvent) { // code starts here.
将此代码添加到“sayHello”函数
sayHello : function(aEvent) { try { // gBrowser is a global value var document = gBrowser.contentDocument;var doc_bodies = document.getElementsByTagName('body'); var doc_body = doc_bodies[0]; var first_element = doc_body.firstChild; var url_div = gBrowser.contentDocument.createElement('div'); url_div.id = 'added-by-firefox-extension'; url_div.innerHTML = document.URL; // add the url at the top of the document body doc_body.insertBefore( url_div, first_element ); // add the url at the end of the document body doc_body.appendChild( url_div ); } catch(e) { alert(e); }
压缩showUrl的内容
对我来说,主要的痛点在于弄清楚如何使用gBrowser来访问网页。
答案 1 :(得分:1)
您正在寻找一个名为 Greasemonkey 的现有Firefox插件(在java脚本极客中非常受欢迎)。它使您能够通过userscripts通过java脚本动态更改网页内容。
http://userscripts.org/有许多用户脚本可供您使用。向他们学习并修改它以供您使用。
答案 2 :(得分:1)
你的问题过于宽泛。为了开始开发Firefox扩展,您需要执行许多步骤。有很多文档和示例可以帮助您入门:https://developer.mozilla.org/en/extensions
答案 3 :(得分:1)
您应该了解XUL(XBL和binding)以附加XUL-DOM-Nodes。您不应该将HTML节点附加到HTML文档。请参阅Extensions-section了解如何构建扩展程序。
答案 4 :(得分:0)
您可以这样做:
从两个隐藏div开始:第一个将具有js条件(例如onChange),该条件将使用站点的URL写入(在js加载之后)。然后js更改innerHTML(或者只有类,如果你使用css使make可见标签),它将包含第一个div的值。
这很简单:)