问题标签 [firefox-addon-sdk]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
css - 防止由 Firefox 插件创建的 html 元素的样式被站点样式表覆盖
我正在从我的 firefox 插件的每个页面中注入一些 html + css。但是这种样式有时会被样式表覆盖。我想停止这种行为。
我知道这可以通过一些 css 技巧来解决。例如添加!important
。但是 Firefox 或 xul 有没有一种方法可以轻松地做到这一点?
javascript - 调用 dispatchEvent 的附加 SDK 不会将事件从内容脚本发送到页面
我有简单的 Firefox 扩展(基于附加 SDK)和pageMod
.
pageMod
向页面注入一些脚本,该页面调用一个函数:
在网页上我有事件监听器,通过MyDiv.addEventListener(...)
. 问题是注入的脚本不会向页面发送任何事件。该dispatchEvent
函数返回 true,但没有任何反应。这是我的pageMod
代码:
如果我contentScript
通过 Firebug 控制台运行代码,它可以工作,但我需要从contentScript
.
PS 我也尝试使用unsafeWindow.document
而不是文档,并使用 jQuery 事件/事件侦听器,但它也不起作用。
firefox - 带有附加 SDK 的 Firefox 插件中的更多存储空间
我想用插件生成器开发一个插件。我读到,通过简单的存储,他的插件可以有大约 5 兆字节的空间,但 5 mgb 不会为我的应用程序做到这一点。我需要更多。我能做什么?
firefox-addon - 关于 Firefox 插件/扩展的向后兼容性的问题
背景资料:
在过去的一周里,我一直在玩弄 Chrome 扩展程序,并且创建我的扩展程序没有问题。太好了,Chrome 让开发过程变得非常容易学习,而且,嗯……很简单!
现在我有一个想法,我想为尽可能多的浏览器创建这个扩展,所以我接下来决定使用 Firefox。
真是一团糟!到目前为止,文档除了让我头疼并浪费我的时间之外什么也没做,非常令人费解,而且通常没有组织。
我已经设法找到了一个简单扩展的代码示例,我认为我可以将其用作起点并开始搞乱 - 很好......
我了解到,这个示例扩展不适用于低于 Firefox 4 的任何版本,因为它使用引导技术使扩展无需重新启动浏览器即可安装。呃呃呃……
现在我们来回答我的问题:
是否可以为 Firefox 7 开发一个可以与以前版本的 Firefox 一起使用的扩展?我什至不关心 Firefox 4 之前的任何事情,如果那是无重启安装的截止点。很高兴知道我花了这么多时间制作的东西将持续工作一个多星期,当提示用户下次升级时。
反过来呢?我可以创建一个与 Firefox 3.5 到 Firefox 7 兼容的扩展吗?我意识到它需要重新启动才能安装,但如果它导致无论版本如何都能工作扩展,那将是可以接受的。
任何有这方面经验的人都可以分享一下我在这里所做的事情吗?看起来这是一个开发平台的噩梦,我将不断修复我的扩展。
最后一条相关信息:
我正在开发的扩展纯粹是基于javascript的——这些东西应该可以工作(我认为?)因为它只依赖于一个特性“内容脚本”,此时在版本之间的实现中确实不应该改变......对吗?
那么我到底错过了什么?您如何创建可在所有版本的浏览器中运行的易于管理的 Firefox 扩展?
谢谢大家!:)
firefox-addon - 如何从 firefox 插件观察 websocket 事件?
有没有办法从插件中观察 WebSocket 事件?
例如,目前,对于 HTTP 请求,我可能会为 http-on-modify-request 或 http-on-examine-response 主题的观察者服务添加一个观察者:我在观察者列表中看不到任何对 WebSockets 的引用通知。
任何帮助将不胜感激。
php - xmlrpcresp 对象上的错误
我正在开发一个项目,我编写了一个 Firefox 插件来与我的客户端服务器上的服务进行通信。我的添加发送一个 POST 请求,然后服务器遇到 xmlrpcresp 对象的错误,即:
和我的插件请求(它打算从服务器接收 json 数据):
客户的 IT 团队说这可能是一个标头错误,而且这种情况并不总是会发生,只是有时会发生。
我的上述请求会导致错误吗?或者,这只是一些服务器端进程的错误?
firefox - 使用 Add-on SDK 添加工具栏按钮?为 Firefox 附加组件集成 XUL 和附加 SDK?
我已经使用 Add-on SDK API 编写了大部分 Firefox 插件。我现在发现附加 SDK 可能不足以满足我的目的。我需要两件事:
- 位置栏旁边工具栏中的下拉按钮。
- 在 Firefox 中修改加载项管理器
这确实令人失望,但我不相信附加 SDK 可以实现这些。
首先,我知道widget
Add-on SDK API 中有一个模块。但这仅允许我在笨拙的附加栏上添加一个简单的图标或标签。如果我需要在 Firebug 或 Greasemonkey 的位置栏旁边添加一个更好的按钮怎么办?至于在 Firefox 中修改插件管理器,我尝试了 Nickolay Ponomarev 的 XUL 和插件 SDK,但没有任何成功。如果有人知道如何让它工作并且可以指出我正确的方向,这将非常有帮助(cfx init --template xul
当我尝试它时不会做任何常规 SDK 所做的事情)
firefox - Problems Repackaging Mozilla Addon Builder Extension Files
Have made quite a bit of progress in my quest to figuring out the Mozilla extension platform, but am still struggling with a few issues.. Hoping someone here can point me in the right direction once again :)
Ok, so here is the issue... I have been messing around with the online addon builder app here: https://builder.addons.mozilla.org/
Great, this seems to be working ok for testing simple addons. But it includes so much extra junk - stuff I am not using and don't need there.
Now when I download the .xpi file, rename it to .zip, and extract it to work on the files, when I repackage it to a zip -> xpi, Firefox tells me the package is corrupt when I try to install.
I have deduced that this is because the package is "signed" or something, and when I repackage it myself this is not happening.
Whatever. This is getting ridiculous...
So I want to use the SDK to work locally, and then just include the SDK in the directory somehow. But it looks like I need to install python and run something in order to generate some files first blah blah blah.... are you joking me? I can't just code my app, then include the SDK files?
QUESTION:
How can I create my basic addon/extension with the online Addon Builder, then edit the files locally, repackage it, and use it?
firefox - 从附加套件修改 Firefox 下载对话框的内容
我希望能够在开始下载文件时在 Firefox 中弹出的下载对话框中添加一个选项。是否可以使用新的附加 SDK 来做到这一点,还是我必须以旧方式做到这一点?
编辑:显然,如果选择了新选项,我需要一种方法来了解它并基于它执行代码。
firefox - 使用 Firefox Addon SDK 时如何调试“Permisson denied”错误
在使用 Addon SDK 1.0 测试和调试扩展时,我有时会在调试输出窗口中注意到以下内容:
有什么方法可以获取更多信息吗?一些调用堆栈信息会很好。此外,了解访问被拒绝的“对象”也会有所帮助。
(我知道我可以console.debug()
在每条语句之前打电话,但我在这里寻找一种更优雅的方式)