JQuery on Web Extensions APIs



它能够在 Firefox Web 扩展上导入和使用 JQuery 吗?

我已经在manifest.json上试过这个

"background":{
"scripts": ["views/jquery.js", "startup.js"]
},
"permissions": [
"storage"
],
"browser_action": {
"browser_style": true,
"default_title": "iVi - Personalized your Dashboard",
"default_popup": "views/menu.html",
"default_icon": {
  "19": "icons/ivi.png",
  "38": "icons/ivi@2x.png"
}

并在菜单上使用"$(文档(.ready"事件.HTML就像下面的这样

<script type="text/javascript">
    $(document).ready(function() {
        $("#url").val("123");
    });
</script>
<div class="panel-form-column2">
  <input type="text" id="url" name="url" value="" />
</div>

但它会产生像下面这样的错误:

内容安全策略:页面的设置阻止加载 资源在 self ("script-src moz-extension:***"(。源: $(document(.ready(function(( {

并尝试在HTML上内联导入JQuery,而不是在manifest.json上导入JQuery。

<script type="text/javascript" src="jquery.js"> </script>
<script type="text/javascript">
    $(document).ready(function() {
        $("#url").val("123");
    });
</script>

并且仍然遇到同样的问题。

知道吗?

根据这个页面:https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Content_Security_Policy,内联javascript不会被执行,试着把你的Javascript放在一个文件中,并在你的html中链接它,就像你对jQuery所做的那样。

将 jQuery 放在清单中的后台脚本下也不起作用,因为后台页面和浏览器操作页面是分开的。

这也扩展到放置在字符串中的任何Javascript,例如

<button onclick="test()">example</button>

单击按钮时,test()不会运行。

最新更新