【发布时间】:2012-04-21 17:00:04
【问题描述】:
我有一个 Google Chrome 扩展程序,它通过上下文菜单项单击打开 Twitter Bootstrap 对话框(使用 JQuery 1.7.x,但不是 JQueryUI),我一直在尝试在 Firefox 版本中做同样的事情(使用附加 SDK 1.6),无济于事。
我可以在我的lib/main.js 中使用context-menu 拦截菜单项单击“确定”,但我无法向包含创建对话框DOM 的函数的内容脚本(请参阅https://stackoverflow.com/a/8493844/954442)发送消息和显示它。我也不能从我的附加脚本创建对话框,因为那里没有 DOM(并且尝试通过 @mozilla.org/moz/jssubscript-loader;1 将 JQuery 加载到该对话框中失败并显示“未定义窗口”)
我已经广泛地寻找示例,但没有找到太多帮助。有没有人有一个context-menu项目点击打开对话框的例子?
(What are the advantages/disadvantages of using the Add-on SDK to develop my Firefox extension? 是我发现的最接近我的问题的东西。我觉得发帖者最终找到了答案,但没有更新问题以说明它是什么。)
(注意。我不准备考虑 XUL,非常不愿意回到 JQueryUI)
【问题讨论】:
-
让我理解:您想添加一个上下文项,当单击该项时,会在当前页面中显示“DOM 制作”面板/对话框。那是对的吗?请注意,您的附加代码中没有 DOM,但您在附加到页面的内容脚本中有 DOM。
-
简而言之,是的。我已经在插件脚本中获得了菜单点击,但需要能够调用内容脚本才能将我的对话框插入到内容 DOM 中。
标签: javascript jquery firefox-addon twitter-bootstrap firefox-addon-sdk