如何在 pageWorker for Firefox add-on SDK 中加载多个 URL?
How to load multiple URLS in pageWorker for Firefox add-on SDK?
使用以下示例,我可以从 URL 即 ContentURL
中获取第一段。例如 - http://www.example.com
//main.js
var getFirstParagraph = "var paras = document.getElementsByTagName('p');" +
"console.log(paras[0].textContent);"
pageWorker = require("sdk/page-worker").Page({
contentScript: getFirstParagraph,
contentURL: "http://www.example.com"
});
我想获取多个站点的第一段 URLs。
var urls = ["http://www.example.com", "http://www.example1.com", "http://www.example2.com"]
有什么方法可以加载多个 URLS 以获得数组中的多个结果?
我试过如下方法,但它进入了无限循环并且不起作用。
//main.js
var getFirstParagraph = "var paras = document.getElementsByTagName('p');" +
"console.log(paras[0].textContent);" +
"self.port.emit('loaded');"
pageWorker = require("sdk/page-worker").Page({
contentScript: getFirstParagraph,
contentURL: "http://www.example2.com"
});
pageWorker.port.on("loaded", function() {
var urls = ["http://www.example.com", "http://www.example1.com"];
for(var i=0; i<urls.length; i++)
{
pageWorker.contentURL = urls[i];
}
});
如有任何帮助,我们将不胜感激。
最后,我完成了这样的代码。效果不错。
var getFirstParagraph = "var paras = document.getElementsByTagName('p');" +
"console.log(paras[0].textContent);"
var urls = ["http://www.example.com", "http://www.example2.com"];
for(var i=0; i<urls.length; i++)
{
pageWorker = require("sdk/page-worker").Page({
contentScript: getFirstParagraph,
contentURL : urls[i],
});
}
我没有找到比这更好的选择。希望这对某人有所帮助。
使用以下示例,我可以从 URL 即 ContentURL
中获取第一段。例如 - http://www.example.com
//main.js
var getFirstParagraph = "var paras = document.getElementsByTagName('p');" +
"console.log(paras[0].textContent);"
pageWorker = require("sdk/page-worker").Page({
contentScript: getFirstParagraph,
contentURL: "http://www.example.com"
});
我想获取多个站点的第一段 URLs。
var urls = ["http://www.example.com", "http://www.example1.com", "http://www.example2.com"]
有什么方法可以加载多个 URLS 以获得数组中的多个结果?
我试过如下方法,但它进入了无限循环并且不起作用。
//main.js
var getFirstParagraph = "var paras = document.getElementsByTagName('p');" +
"console.log(paras[0].textContent);" +
"self.port.emit('loaded');"
pageWorker = require("sdk/page-worker").Page({
contentScript: getFirstParagraph,
contentURL: "http://www.example2.com"
});
pageWorker.port.on("loaded", function() {
var urls = ["http://www.example.com", "http://www.example1.com"];
for(var i=0; i<urls.length; i++)
{
pageWorker.contentURL = urls[i];
}
});
如有任何帮助,我们将不胜感激。
最后,我完成了这样的代码。效果不错。
var getFirstParagraph = "var paras = document.getElementsByTagName('p');" +
"console.log(paras[0].textContent);"
var urls = ["http://www.example.com", "http://www.example2.com"];
for(var i=0; i<urls.length; i++)
{
pageWorker = require("sdk/page-worker").Page({
contentScript: getFirstParagraph,
contentURL : urls[i],
});
}
我没有找到比这更好的选择。希望这对某人有所帮助。