【发布时间】:2016-10-11 02:29:56
【问题描述】:
在我的插件中,我有一个菜单命令,可以为我的插件打开 xul 选项面板。那个 xul 窗口没有自己的 javascript。
但是,由于主脚本打开面板,主脚本如何知道用户在该窗口中单击“确定”并提交数据的时间?我想知道提交事件何时触发,以便检查“选项”窗口中设置的首选项。
基本上,我想在提交窗口时运行一个函数,但我想从主插件脚本中执行所有操作。
这是我现在拥有的。
function OpenPrefsPanel(){
var prefpanel = window.openDialog("chrome://myaddon/content/options.xul", "", "centerscreen,chrome,modal");
prefpanel.addEventListener("submit", function(e){ doSomething(); },false );
},
【问题讨论】:
-
如果您打开的窗口不是同一个域,我认为您不能这样做
-
嗯,两个窗口都来自我自己的插件 - 这是否意味着它们是同一个域?
-
仅供参考:我没有查看 Thunderbird 的选项,但在 Firefox 中,为选项窗口指定的
features是;'chrome,titlebar,toolbar,centerscreen,modal'. -
你有窗口对象
prefPanel,为什么不为close事件添加一个监听器呢?或者观察您的附加组件的偏好? -
在这些文档中,没有
close事件:w3.org/TR/DOM-Level-2-Events/events.html#Events-EventListener
标签: javascript xul thunderbird-addon