Firefox扩展开发:获取新标签的URL

时间:2010-02-09 03:54:12

标签: firefox-addon

有人能告诉我如何在firefox上获取下一个标签的URl吗?我现在正在使用它:

//The browser object points to the new tab which I capture using the
//'TabOpen' Event
var browser = gBrowser.getBrowserForTab(event.target);

//From where can I get the URL of this new tab ? Also, how to I get
//the Title of this new Tab

提前致谢..

1 个答案:

答案 0 :(得分:14)

让我们一起来解决这个问题。首先search google for "getBrowserForTab"看看它返回的是什么类型的对象。您会看到一个页面,其中第一个匹配的是示例,第二个匹配的是reference page。后者是我们正在寻找的。它说:

  

[getBrowserForTab(tab)]返回指定制表符元素的browser

点击browser的链接,查看此对象的属性和方法。

你会看到它有contentTitle属性(“这个只读属性包含浏览器中文档对象的标题。”),它回答你问题的第二部分。

同样地,您看到它具有currentURI属性,该属性返回“当前加载的URL”。返回的对象是nsIURI,以获取您需要使用currentURI.spec的字符串表示形式,如nsIURI documentation中所述。

总结一下:

var title = browser.contentTitle; // returns the title of the currently loaded page
var url = browser.currentURI.spec; // returns the currently loaded URL as string

您还可以通过window / document获取内容页面的browser.contentWindow / browser.contentDocument个对象,并使用以下内容获取标题/网址(和其他内容)您将在常规网页中使用的API。

希望这会有所帮助,下次你提出问题时你会尝试自己这样做(如果找不到文档或者无法理解,请说明你遇到的具体问题)。