标签: firefox-addon-sdk

别名从另一个目录获取 bash 文件并返回到当前目录

我正在尝试sourceFirefox插件 sdk。为此,我必须cd进入 sdk 的目录,然后运行source bin/activate​​. 如果我不cd进入该目录,并直接从我当前所在的任何路径获取源,则会发生以下情况:

$ 源 ~/src/devtools/addon-sdk/bin/activate
欢迎使用附加 SDK。运行“cfx docs”以获得帮助。
$cfx
-bash:cfx:找不到命令

我想要一个别名,将其放入 sdk,获取它,然后返回到我当前的目录:

alias acfx='cd ~/src/devtools/addon-sdk && source bin/activate && cd "$(dirname "$0")"'

这正确地获取了 sdk,但可惜没有返回到我调用别名的目录:

$ acfx
欢迎使用附加 SDK。运行“cfx docs”以获得帮助。
目录名:非法选项 -- b
用法:目录名路径

我在这里迷路了,如何返回原来的目录?或者指定一个“工作目录” source

bash firefox-addon-sdk

3
推荐指数
1
解决办法
563
查看次数

Firefox 扩展 .xpi 文件结构:描述、内容、创建和安装

我花了很多精力寻找一种简单的方法来开发 Firefox 扩展,但我无法创建扩展。请告诉我 Firefox 扩展的文件结构以及安装扩展的简单方法。

firefox-addon google-chrome-extension firefox-addon-sdk firefox-addon-webextensions

3
推荐指数
1
解决办法
8409
查看次数

使用page-mod(Firefox Addon)将onclick事件添加到特定按钮

我正在尝试使用插件构建器开发firefox插件.

我想修改基于网络的邮件的邮件编辑器.(在下面的代码中,我正在尝试Yahoo! Japan的邮件服务.)

我想在用户按发送按钮时执行特定代码.

插件代码是:

main.js

var self = require("self");
var pageMod = require("page-mod");


pageMod.PageMod({
    include: "*.mail.yahoo.co.jp",
    contentScriptWhen: 'end',
    contentScript: "document.getElementById('send_top').setAttribute('onclick', 'alert(\"blabla\")');"
});
Run Code Online (Sandbox Code Playgroud)

电子邮件编辑器页面中的按钮:

<input id="send_top" class="inputbutton" type="submit" title="Submit an email"
       value="Submit" name="action_msg_send" accesskey="9">
Run Code Online (Sandbox Code Playgroud)

当用户"提交"按钮时,我想显示对话框.

javascript firefox-addon firefox-addon-sdk

2
推荐指数
1
解决办法
1万
查看次数

FireFox SDK keydown/keyup事件

是否可以在FireFox插件中跟踪keydown/keyup事件?我想实现类似于以下场景的东西:

  • 按下并按住修改键面板后出现
  • 按住这些修改键,按其他键将导致面板执行某些操作
  • 当修改键释放时,面板消失

firefox firefox-addon firefox-addon-sdk

2
推荐指数
1
解决办法
893
查看次数

Firefox Addon SDK中内容脚本中的JQuery UI

我正在使用Addon Builder开发Firefox插件.我在我的插件面板中使用JQuery UI,并且还希望从与面板绑定的内容脚本中使用它.在面板页面一切正常.在内容脚本中,JQuery似乎可以工作,但我看不到JQuery UI调用的影响,例如下面的滑块案例.

以下是我定义面板的main.js的一部分:

var panel = require("panel").Panel({
    width: 350,
    height: 400,
    contentURL: require("self").data.url("panel.html"),
    contentStyleFile: data.url("css/jquery-ui-1.8.22.custom.css"),
    contentScriptFile: [
        data.url("js/jquery-1.8.0.js"),
        data.url("js/jquery-ui-1.8.22.custom.min.js"),
        data.url("panel.js")
        ]
});
Run Code Online (Sandbox Code Playgroud)

这是触发自定义事件的调用:

panel.port.emit("loadingDataEvent", t );
Run Code Online (Sandbox Code Playgroud)

panel.js中,以下部分尝试使用JQuery和JQuery UI.JQuery调用成功完成,但尝试更新滑块对象的JQuery UI调用对任何事情都没有任何影响:

self.port.on("loadingDataEvent", function (t) {
    $("#load-counter").html("<br />Not enough data yet. Approx. " + t + " secs. to go...");
    $( "#progressbar" ).progressbar( "option", "value", (60-t)/60*100 );
    document.defaultView.postMessage('{}', '*');
});
Run Code Online (Sandbox Code Playgroud)

在我的panel.html中,我可以使用JQuery和JQueryUI,没有任何问题,通过以常规方式包含它们:

<link type="text/css" href="css/jquery-ui-1.8.22.custom.css" rel="Stylesheet" />    
<script type="text/javascript" src="js/jquery-1.8.0.js"></script>
<script type="text/javascript" src="js/jquery-ui-1.8.22.custom.min.js"></script>
 ... …
Run Code Online (Sandbox Code Playgroud)

jquery jquery-ui firefox-addon firefox-addon-sdk

2
推荐指数
1
解决办法
2276
查看次数

Firefox:在自己的主页上"安装插件"按钮

我创建了一个greasemonkey脚本,并希望在我的主页上提供"安装Greasemonkey"按钮.该按钮应该从重定向在addons.mozilla.org安装火狐插件Greasemonkey的备用和用户.在他们安装了greasemonkey后,我提供了一个"安装greasemonkey脚本"按钮,该按钮已经可以使用了.

是否可以直接在我的主页上添加"安装greasemonkey"按钮?理想情况下,将使用托管addons.mozilla.org上的插件,我不会在我自己的主机Greasemonkey的.

firefox greasemonkey firefox-addon firefox-addon-sdk

2
推荐指数
1
解决办法
835
查看次数

为什么在Windows-mod模块中onAttach没有在Firefox附加软件中执行?

我正在编写一个使用context-menupage-mod模块的Firefox插件.

当上下文是输入控件时,此附加组件将新菜单项添加到上下文菜单.单击菜单项时,我向服务器请求获取一些数据并将结果推送到page-mod正在使用的内容脚本.

由于某种原因,onAttach函数没有被调用.控制台中没有错误.我不确定为什么没有被召唤.这就是我在做的事情.

var data = require("self").data,
    contextMenu = require("context-menu"),
    request = require("request").Request;

var workers = [];
var pageMod = require("page-mod");
pageMod.PageMod({
    include: '*',
    contentScriptWhen: 'ready',
    contentScriptFile: [data.url("jquery-1.8.2.min.js"), data.url("varnam.js")],
    onAttach: function(worker) {
        console.log("onAttach");
        workers.push(worker);
        worker.on("detach", function() {
            var index = workers.indexOf(worker);
            if (index >= 0) workers.splice(index, 1);
        });
    }
});
Run Code Online (Sandbox Code Playgroud)

解决这个问题的任何帮助都会很棒.完整代码可在此处获得.

javascript firefox firefox-addon firefox-addon-sdk

2
推荐指数
1
解决办法
865
查看次数

简单存储和localStorage有什么区别?

在chrome扩展开发中,我们可以localStorage用来存储我们需要的东西.我可以localStorage在使用Addon-Builder的firefox插件开发中使用吗?我看过很多firefox插件项目使用simple-storage,simple-storage和之间的区别是localStorage什么?

javascript html5 local-storage google-chrome-extension firefox-addon-sdk

2
推荐指数
1
解决办法
540
查看次数

Firefox插件:TypeError:getBrowserForTab(...)未定义

将对象附加到window活动选项卡中时main.js,出现以下错误:

 Message: TypeError: getBrowserForTab(...) is undefined
Run Code Online (Sandbox Code Playgroud)

这是我用来附加对象的代码:

var { getTabs, getTabContentWindow } = require('sdk/tabs/utils');
tabs.on('load', function(tab) {
    var window = getTabContentWindow(tab);    
    window.myObject = {
     data: "sample"
    }
});
Run Code Online (Sandbox Code Playgroud)

firefox firefox-addon firefox-addon-sdk

2
推荐指数
1
解决办法
383
查看次数

firefox扩展:拦截url它有条件地请求和阻止

在firefox扩展中我想截取url浏览器正在发出请求并在某些条件匹配时完全阻止请求

我该如何拦截被请求的URL

javascript firefox firefox-addon firefox-addon-sdk

2
推荐指数
1
解决办法
2841
查看次数