我正在为firefox开发一个插件。在其中,我必须打开一个隐藏的选项卡,并通过javascript访问其内容,然后关闭它。
下面是我用来访问选项卡内容的代码:
var newTabBrowser = gBrowser.getBrowserForTab(gBrowser.addTab("www.kayak.com/flights#/BOM-ORL/2013-05-14/2013-06-19"));
var contentdata = "";
newTabBrowser.addEventListener("load", function () {
contentdata = contentdata + newTabBrowser.contentDocument.body.innerHTML;
load = load + 1;
if(load == 5) {
var DOMPars = new DOMParser();
var dom = DOMPars.parseFromString(contentdata, "text/html");
var priceNode = dom.getElementById('low_price');
}
}, true);
如何在浏览器中隐藏此选项卡?
看起来你只需要创建一个永久的、不可见的页面并访问它的DOM。
Addon-SDK提供页面工作模块。这是你想要的吗?
如果您存储了对使用addTab打开的选项卡的引用,则可以使用css或其他可用方法隐藏该选项卡。例如:
var newTab = gBrowser.addTab("www.kayak.com/flights#/BOM-ORL/2013-05-14/2013-06-19");
newTab.setAttribute("style", "display: none");
var newTabBrowser = gBrowser.getBrowserForTab(newTab);
newTabBrowser.loadCount = 0;
var contentdata = "";
newTabBrowser.addEventListener("load", function () {
contentdata = contentdata + newTabBrowser.contentDocument.body.innerHTML;
this.loadCount = this.loadCount + 1;
if(this.loadCount == 5) {
var DOMPars = new DOMParser();
var dom = DOMPars.parseFromString(contentdata, "text/html");
var priceNode = dom.getElementById('low_price');
}
}, true);