如何引用Firefox扩展的数据目录中的文件
How to reference a file in the data directory of a Firefox extension?
我正在开发Firefox扩展,需要从内容脚本向页面注入JavaScript。在我的Chrome扩展中,我做了以下操作:
this.initializeJplayerSupport = function() {
var script = document.createElement('script');
script.setAttribute('type', 'application/javascript');
script.setAttribute('src', chrome.extension.getURL('js/custom-jplayer.js'));
document.head.appendChild(script);
}
该文件在我的数据目录中。如何在firefox扩展内容脚本中引用js文件(我在Chrome中使用了chrome.extension.getURL()
)?
如果您在基于SDK的插件中的main.js中,则需要并使用"self"对象中的"data"帮助程序:
var data = require('self').data;
console.log(data.url('somefile.js')); // prints the resource uri to the file.
更多信息:
https://developer.mozilla.org/en-US/Add-ons/SDK/High-Level_APIs/self#data
一旦您获得了这个资源uri,您就可以使用self.postMessage或self.port.emit:将其提供给内容脚本
https://developer.mozilla.org/en-US/Add-ons/SDK/Guides/Content_Scripts
看起来从Firefox 38开始,cfx
已经被jpm
取代。
这可能就是为什么这条线路不适合我的原因:
var data = require('self').data;
我只需要重写一点:
var data = require('sdk/self').data;
相关文章:
- 如何在chrome扩展中存储数据/结果,以及如何使用setTimeout使其只被调用一次
- Chrome扩展:遍历不同的页面并收集数据
- o数据扩展查询在SystemUserRolesSet上不起作用
- 在chrome扩展中使用AJAX获取目录中的文件数
- jQuery扩展数据持久性
- 如何引用Firefox扩展的数据目录中的文件
- 通过命令按钮单击更改丰富面可扩展数据表高度
- 需要创建可扩展的目录
- OL3:将“扩展数据”写入 KML
- 如何确定扩展的目录
- 在QuickBlox中传递扩展数据和会话请求时出现问题
- 显示来自firefox插件的图像'网页中的数据目录
- 如何在jsf中鼠标悬停时高亮显示扩展数据表的行
- 如何在拖放中扩展数据复制
- 从firefox扩展's数据目录播放音频
- 如何在HTML中访问数据目录
- 扩展数据表”;fnInitComplete”;
- 如何使用jQuery.data递归扩展数据
- 如何将照片从图库复制到数据目录
- 在TypeScript中扩展数据对象