開發Firefox附加組件。任何人都可以請幫忙弄清楚如何使面板變得透明。 這裏是顯示面板的代碼:Firefox附加組件SDK:如何使面板透明
var panel = require("sdk/panel").Panel({
width: 570,
height: 250,
contentURL: require("sdk/self").data.url("test.html")
});
panel.show();
開發Firefox附加組件。任何人都可以請幫忙弄清楚如何使面板變得透明。 這裏是顯示面板的代碼:Firefox附加組件SDK:如何使面板透明
var panel = require("sdk/panel").Panel({
width: 570,
height: 250,
contentURL: require("sdk/self").data.url("test.html")
});
panel.show();
我發現了一個解決方案,但它不是因爲SDK/panel.js漂亮似乎並不爲了調整以暴露原始Panel對象/延伸或者從現有的一個組成另一個小組。
這裏所說:
(1)獲取sdk/panel.js這裏的源:在你的插件XPI找到SDK文件夾內panel.js(原始)或。
(2)將它作爲新文件添加到您的插件包中。 (3)更改此克隆文件的要求參數(第16-24行),以便它們指向插件的正確位置。
例如: 變化
const { validateOptions: valid } = require('./deprecated/api-utils');
到
const { validateOptions: valid } = require('sdk/deprecated/api-utils');
(4)查找line 137,並修改變量css
根據自己的喜好。像這樣:
...
let css = [
".panel-inner-arrowcontent, .panel-arrowcontent {padding: 0;}", //original css rule
".panel-inner-arrowcontent, .panel-arrowcontent {opacity: 0.50; border-radius: 0.35in;}" //additional css rules: semi-transparent panel with rounded borders.
].join(" ");
...
(5)使用panel.js的修改版本,而不是使用sdk附帶的修改版本。
應該是這樣。就像我說的那樣,它不是特別優雅。
您也可以覆蓋'show'功能,而不是重複完整的源代碼 – mate64 2015-11-22 21:38:32