Javascript 使用Firefox扩展显示网页当前URL
我为文章标题编写了以下代码,但没有真正的URL,而是得到了以前的URL(例如,如果我在谷歌上,在搜索字段中键入“car”,然后键入“Enter”I get)http://www.google.fr“而不是搜索中的URL) 代码:Javascript 使用Firefox扩展显示网页当前URL,javascript,url,firefox-addon,Javascript,Url,Firefox Addon,我为文章标题编写了以下代码,但没有真正的URL,而是得到了以前的URL(例如,如果我在谷歌上,在搜索字段中键入“car”,然后键入“Enter”I get)http://www.google.fr“而不是搜索中的URL) 代码: window.addEventListener("change", function() { myExtension_with_change.init(); }, false); var myExtension_with_change = { init: fun
window.addEventListener("change", function() { myExtension_with_change.init(); }, false);
var myExtension_with_change = {
init: function() {
var url = window.location.href;
alert(url);
}
}您可能需要在第一个窗口中添加事件侦听器以等待窗口加载,例如:
window.addEventListener("change", function()
{
window.addEventListener("load", function()
{
myExtension_with_change.init();
}, false);
}, false);
我怀疑window是否是监听URL更改的正确锚点。我的第一次尝试是在#urlbar收听更改事件(不过我没有尝试):
如果你的最终目标是在每个标签上都能听到URL的变化,我建议你也看看这个。在另一篇文章中给出了一个完美的答案() 在我的情况下,我遵循了年的建议。只需调用下面的代码片段就可以得到当前的url gBrowser.mCurrentBrowser.currentURI.QueryInterface(Components.interfaces.nsIURI)
var currentUrl=gBrowser.mCurrentBrowser.currentURI.spec
谢谢你的回答,但我已经尝试过了,现在没有显示警报。谢谢你的回答,但我已经尝试过了,现在没有显示警报。@布鲁诺:这可能是因为它应该是
document.getElementById('urlbar')
而不是window.getElementById('#urlbar')
。
window.getElementById('#urlbar').addEventListener("change", function() {
myExtension_with_change.init(); }, false);