用Add-on Builder 生成FF插件,真是一件简单愉快的事情. 反面教材,请参见[bat]修改ff下载文件目录
const data = require("self").data;
const file = require("api-utils/file");
var Widget = require("widget").Widget;
var notifyPanel = require("panel").Panel({
width:100,
height:60,
contentURL: data.url("notify.html")
});
exports.main = function() {
new Widget({
id: "hafyell-widget-1",
label: "Customize Download Dir",
contentURL: data.url("favicon.ico"),
panel: notifyPanel,
onClick: function(event) {
var today = new Date();
var dirname = "D:\\Downloads\\" + today.getFullYear() + "_" + (today.getMonth() + 1) + "_" + today.getDate();
if (!file.exists(dirname)){
file.mkpath(dirname);
}
var name = "browser.download.useDownloadDir"
require("preferences-service").set(name, true);
name = "browser.download.dir";
require("preferences-service").set(name, dirname);
name = "browser.download.folderList";
require("preferences-service").set(name, 2);
}
});
};