从firefox扩展中检索网站的favicon网址

时间:2011-10-28 11:38:19

标签: javascript firefox-addon xul

我想在网站加载后检索网站的网站图标网址。我如何为我的firefox扩展实现这个。

2 个答案:

答案 0 :(得分:2)

您可以使用nsIFaviconService,它可以缓存已知页面的favicon。沿着这些方向:

var faviconService = Components.classes["@mozilla.org/browser/favicon-service;1"]
                               .getService(Components.interfaces.nsIFaviconService);
var favicon = faviconService.getFaviconImageForPage(gBrowser.currentURI);
alert(favicon.spec);

请注意,它适用于nsIURI objects,而不是字符串。您可以使用nsIIOService.newURI()从字符串中获取nsIURI对象。

是的,我意识到我正在复制karthik的答案 - 但它没有任何解释,只有一个伪造的代码示例。

答案 1 :(得分:0)

https://developer.mozilla.org/en/nsIFaviconService https://developer.mozilla.org/en/Using_the_Places_favicon_service

请仔细阅读本页。您可以使用以下定义的服务:

nsIServiceManager serviceManager = 
Mozilla.getInstance().getServiceManager(); 
nsIFaviconService service = 
(nsIFaviconService)serviceManager.getServiceByContractID("@mozilla.org/brows 
er/favicon-service;1", nsIFaviconService.NS_IFAVICONSERVICE_IID);