1
我的Firefox插件有一些問題。 我創建了一個contextmenu,它工作正常。但是這個函數不會返回元標籤的內容。Firefox插件SDK - getElementsByTagName
var tabs = require("sdk/tabs");
var contextMenu = require("sdk/context-menu");
[..]
onMessage: function() {
pageWorker = require("sdk/page-worker").Page({
contentScript: "self.postMessage(document.head.getElementsByTagName('meta'));",
contentURL: tabs.activeTab.url,
onMessage: function(metaTags){
var text= "";
console.log(metaTags.length);
for(var i = 0; i < metaTags.length; i++){
if(metaTags[i].getAttribute("property") == "description"){
text = metaTags[i].getAttribute("content");
break;
}
}
console.log(text);
}
});
}
console.log(metaTags.length)return undefined。這是一個Firefox-SDK問題。導致Skript在jsfiddle或greasemonkey中正常工作。
我使用「cfx run」。 「 」當您使用cfx run或cfx test運行加載項時,全局extensions.sdk.console.logLevel首選項會自動設置爲「info」。這意味着對console.log()的調用將出現在控制檯輸出中「。 – EsTyA 2014-09-03 16:51:01
我相信控制檯輸出實際上顯示在您運行'cfx run'的命令行窗口中,而不是瀏覽器控制檯IIRC。你可以檢查嗎? – mc10 2014-09-03 17:05:44
我按Strg + A.然後我選擇擴展。在那裏我激活了調試模式。所以我可以在Firefox的標準調試工具中看到console.log輸出。 – EsTyA 2014-09-03 17:50:34