2

我正在制作一个 Jetpack 扩展,其中一个小部件会打开一个面板。单击小部件会按预期打开面板(锚定在小部件的右下角)。但是,如果我从我的代码中调用 widget.panel.show(),面板会打开,与小部件分离,位于屏幕中心,漂浮在空间中。

简而言之,我该如何解决这个问题?

  1. 我可以模拟小部件上的点击事件(以某种方式)而不是调用widget.panel.show()吗?

  2. 我可以强制面板锚定到小部件吗?

这个问题有一个在以前的 Jetpack API 中有效的解决方案,但我无法转换到新界面: Using Positioning 'Panel' in new Jetpack API

4

2 回答 2

3
panel.show(require("tab-browser").activeTab.ownerDocument.getElementById('widget:yourAddonId@package.json-yourWidgetId'));

使用 Addon SDK 1.8.1 为我工作
其中:
yourAddonId@package.json - 你的插件 ID 来自 package.json
yourWidgetId - 你的小部件 ID

于 2012-07-26T07:50:51.033 回答
1
panel.show(widget)

不工作?

于 2011-04-13T22:11:19.230 回答