我正在尝试学习如何为firefox添加简单的内容。我基于this tutorial。
这是我的代码:
LIB / main.js
var self = require("sdk/self");
var button = require("sdk/ui/button/action").ActionButton({
id: "style-tab",
label: "Style Tab",
icon: "./icon-16.png",
onClick: function() {
require("sdk/tabs").activeTab.attach({
contentScriptFile: [self.data.url("jquery.js"), self.data.url("edit-page.js")]
});
}
});
数据/编辑-page.js
$("body div").css("visibility", "hidden");
$("body").append( $("#addon_hide_page") );
var styles = {
width: "100%",
height: "100%",
backgroud-color: "gray"
}
$("body #addon_hide_page").css(styles);
在此问题的标题中输入错误:"消息:SyntaxError:missing:属性id"之后。正如所见:有一个":"之后" id" (main.js中的第四行)。那么,发生了什么?
BTW:有没有比在Windows CMD中阅读那些无用语句更好的方法来调试firefox插件?答案 0 :(得分:7)
在data/edit-page.js
中你不能拥有一个名为background-color
的属性,这个破折号会让它变得混乱。你必须把它放在引号中。所以:
$("body div").css("visibility", "hidden");
$("body").append( $("#addon_hide_page") );
var styles = {
width: "100%",
height: "100%",
"backgroud-color": "gray" ////////////////fix here
}
$("body #addon_hide_page").css(styles);
调试的最佳方法是使用浏览器控制台。
设置开发首选项(安装此插件:DevPrefs),然后按Ctrl+Shift+J
并观看错误消息。使用console.log console.info console.warn和console.error将消息记录到Browser Concole中。执行console.log(objectName)并在浏览器控制台中单击该对象,它将显示其中的内容。