- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我对 Firefox 插件的最新更新已被拒绝,因为我使用了自定义的 jquery-ui(由他们的网站生成,其中包含我想要的小部件)并且未通过校验和检查。
Your add-on includes a JavaScript library file that doesn't match our checksums for known release versions. We require all add-ons to use unmodified release versions, obtained directly from the developer's website. We accept JQuery/JQuery-UI libraries downloaded from 'ajax.googleapis.com', 'jquery.com' or 'jqueryui.com'; and used without any modification. (file-name change does not matter) I'm sorry, but we cannot accept modified, re-configured or customized libraries.
很公平,我可以下载完整的并重新提交,但我想知道是否可以链接到一个?
如果我尝试这样做:
contentScriptFile: [self.data.url("https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"), self.data.url("https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.3/jquery-ui.min.js"), self.data.url("api.js")],
我在运行时收到一条错误消息,告诉我内容脚本大部分是本地的。谷歌和the API似乎对我来说是幻觉的答案。
有谁知道这是否可行以及如何实现?
干杯
丰富
最佳答案
self.data.url("https://...")
你好像没读过the documentation在 data.url()
明确指出
The data.url() method returns a resource:// url that points at an embedded data file.
这意味着您不能链接到外部资源。
Does anyone know if this is possible and how?
不,contentScriptFile
与常规 Web 内容相比以(略微)提升的权限运行,这就是为什么您不允许从可能发生变化并且理论上将来可能注入(inject)恶意代码的源加载脚本。
如果您想依赖外部库并使它们保持最新,您可以简单地编写一个小的构建脚本,在构建新的 XPI 时始终下载最新版本。
原则上,您可以通过特权 XHR 加载脚本,然后将其作为字符串传递,但这可能无法通过 AMO 审核。
还有一点个人意见:由于您的目标是特定的浏览器,因此您实际上并不需要 jquery 来实现其跨浏览器逻辑,现代 Web API 提供了许多方便的方法,您只需使用 vanilla ES6 就可以做到这一点- javascript 和最先进的 DOM API。迭代器和箭头函数也使批量操作相当简洁。
关于javascript - 如何在 Firefox 插件中使用来自外部 URL 的内容脚本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28626395/
我是一名优秀的程序员,十分优秀!