Firefox附加组件:如何获取地址栏的值?

时间:2011-12-28 05:00:07

标签: javascript firefox-addon

我正在尝试构建一个firefox插件。任何人都可以告诉我如何获得地址栏的价值?

目前我使用的是以下代码,但我不想在单独的文本框中输入网址。相反,我想从我要输入的地址栏中获取值。

我的代码应该完成其余的工作。 目前代码从文本框中获取值

JavaScript代码:

function Doit()
{
var url = document.getElementById('txtSource').value;
url = url.replace('www.', 'myvalue.whatever.');
var dest = document.getElementById('txtDest');
dest.value = url;
window.open(url,'_newtab');
}

HTML:

<input type="text" id="txtSource"/><br><br>
<input type="button" value="ACDEV" onClick="Doit();"/>
<input type="hidden" id="txtDest">

输出应该是: 当我输入http://www.something.com时,插件应该在点击插件图标

时创建http://myvalue.something.com

3 个答案:

答案 0 :(得分:3)

使用 document.URL 完成工作。

document.URLdocument.location返回只读字符串。您无法更改document.URL,但可以更改窗口位置。

window.location.href 属性与document.URL相同,window.location.href可用于服务器重定向。

答案 1 :(得分:2)

使用location.href检索值

您还应修改替换模式,以避免在

等网址上出现意外结果
http://something.www.anotherthing.com

http://something.com/www.htm

答案 2 :(得分:0)

对于插件,您可以使用以下代码从地址栏中获取网址

Javascript代码:

function Doit(){
   var link = window.top.getBrowser().selectedBrowser.contentWindow.location.href;
   alert (link); 
}

HTML code:

<div onclick = "Doit()">Generate URL</div>

这将生成浏览器当前选项卡上显示的URL。