如何在不分析页面代码的情况下获取网站的图标?

时间:2014-02-05 19:10:23

标签: javascript firefox-addon xul

我捕获DOMContentLoaded事件。我有触发事件的文件。在大多数情况下,可以获得图标:

let favicon=gBrowser.selectedTab.image;

但是如果页面相当大,用户可以有时间激活其他选项卡。在这种情况下,此代码将获取新选项卡的favicon。我可以获得文件或浏览器的标签更新。是否可以在不分析页面代码的情况下获取图标? 提前致谢

1 个答案:

答案 0 :(得分:0)

是的,使用PlacesUtils,只需使用页面的域名,您不必等待页面加载即可。从document.location获取它

var {interfaces: Ci, utils: Cu} = Components;
Cu.import("resource://gre/modules/PlacesUtils.jsm");
Cu.import("resource://gre/modules/Services.jsm");
var uri = Services.io.newURI('http://www.bing.com/', null, null);

var callback = function(uri, len, data, mimeType) {
      alert(uri.spec);
      console.log(uri.spec);
}





PlacesUtils.favicons.getFaviconDataForPage(gBrowser.currentURI, callback );