4

我正在用Add-on SDK创建一个Firefox附加组件。我的插件使用由ui/sidebar API创建的补充工具栏。有没有办法让我控制这个侧边栏的初始宽度?控制Firefox附加sdk边栏宽度

用户可以通过拖动来改变其大小,但我希望它的宽度大于默认打开的宽度。这可能吗?

谢谢。

回答

0

是在style属性中使用宽度。或者使用最小宽度。 Like style: 'min-width: 14em; width: 18em; max-width: 36em;'

这是创建侧边栏的插件。你可以安装它,准备好演示。 _ff-addon-BootstrapSidebar

+0

您引用了哪种样式属性?我刚接触Firefox附加组件,但它看起来像您提供的示例是用于引导式扩展。我的项目使用附加sdk。我可以在SDK中设置此属性吗?谢谢! – Pwnosaurus

+0

哦,我错过了。在SDK中我不确定。 – Noitidart

+1

我看到没有人回答这个问题。看到这个插件它是引导,但一个简单的模板来展示你的侧边栏:[_ff-addon-template-BootstrapSidebar](https://gist.github.com/Noitidart/8728393)宽度在这个控制 – Noitidart

3

使用window/utils你可以得到最顶层的浏览器窗口中的nsIDOMWindow实例,那么你就可以得到那个窗口的HTML元素,这将使您修改它的侧边栏元素的CSS属性:

var utils = require('sdk/window/utils'); 
var win = utils.getMostRecentBrowserWindow(); 
if (utils.isBrowser (win)) 
{ 
    var sidebar = win.document.getElementById ("sidebar"); 
    sidebar.style.minWidth = "340px"; 
    sidebar.style.width = "340px"; 
    sidebar.style.maxWidth = "500px"; 
} 

请注意,这将影响最顶级的开放Firefox窗口(包括书签和历史边栏)的所有侧边栏;