我想使用带有Firefox扩展程序的Javascript动态获取网页的网址(即,如果网址更改获得新网址)。
到目前为止,我已尝试使用附加到当前窗口的事件侦听器,但它不起作用。 (Display Webpage current URL with Firefox extension)
有人可以发布一些代码来告诉我一个实现这个目标的方法吗?
答案 0 :(得分:1)
你可以向URL栏添加一个事件监听器(我在评论中解释了为什么旧问题的答案中的代码不起作用)但坦率地说 - 这不是最好的办法。例如,如果用户开始输入URL栏内容,也可以更改URL栏内容。用户甚至可以选择从浏览器窗口中删除URL栏。
实现这一目标的最佳方法是实现进度监听器。您可以在https://developer.mozilla.org/en/Code_snippets/Progress_Listeners上找到示例代码和说明。您会对调用onLocationChange
方法感兴趣,每次URL栏内容需要更改时都会发生这种情况(当用户在标签之间切换时)。
答案 1 :(得分:0)
您可以尝试在window对象上侦听hashchange事件。 chrome和firefox都支持它。虽然不确定IE。
window.onhashchange = function () {
hashChanged(window.location.hash);
}
如果您的浏览器不支持“hashchange”事件,则可以使用此插件http://benalman.com/projects/jquery-hashchange-plugin/。