它能够在 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()
不会运行。