2013-11-24 44 views
0

我已经为Firefox的插件的具体尺寸。我安装它,但我有两个问题。我使用windows.open,因为面板不适合我,因为如果用户想要在其中复制某些内容,面板在离开时会消失。所以我有窗户。我有这样的代码:插件的Firefox - 打开窗口

var widgets = require("sdk/widget"); 
var windows = require("sdk/windows").browserWindows; 
var self = require("sdk/self"); 
var widget = widgets.Widget({ 
id: "open window", 
label: "test", 
contentURL: self.data.url("favicon.ico"), 
onClick: function() { 
windows.open({ 
url: "http://www.example.com", 
onOpen: function(window) { 
} 
}); 
} 
}); 

我不`吨知道往哪里放的宽度,高度,没有滚动的属性:/为了可以显示出来的弹出窗口。

第二个问题是该按钮显示在扩展条上。如何可以在Firebug旁边的导航栏上显示它?

回答

0

windows模块不支持指定窗口功能。

您可以使用不稳定的window/utils模块和openDialog函数来提供。 或者你可以得到自己的chrome权限,并自己重新实施这些东西。 openDialogimplementation是惊人的相当直接,可以轻松借用。

无论哪种方式,您都需要等待窗口实际完全加载(newWindow.addEventListener("load", ...)),然后才能与其进行安全交互。或者通过windows模块来获得第一个open事件的听力。

+0

我喜欢openDialog的方式,但它不'吨工作这一个。 var widgets = require(“sdk/widget”); var {openDialog} = require('sdk/window/utils'); VAR窗口= openDialog( 'http://www.example.com',{ 名: '传送插座窗口', 特征:{ 宽度:200,高度 :200, 弹出:真 } }) ; }); VAR插件= widgets.Widget({ ID: “开窗”, 标签: “开窗”, 的contentURL: “http://www.mozilla.org/favicon.ico”, 的onClick:函数(){ window.openDialog({ }); } });你能帮助我吗? – giorgionasis