过去两天我一直在偷兔子洞,并且没想到这一点。我是编码的新手,这可能是我的整体问题!
我的Chrome扩展程序的HTML代码(popup.html)如下:
<html>
<body>
<div id="ourmanna-verse">Loading...</div>
<script type="text/javascript" src="votd.js"></script> </body>
</html>
我的votd.js文件代码如下。
<script src="http://www.ourmanna.com/verses/api/js/" type="text/javascript">
</script>
脚本标记中的网站如果您按照网址进行操作,但我没有复制并粘贴它,因为它在浏览器中对其进行格式化渲染:O!
popup.html文件不会将votd.js文件拉入div ID,&#34; ourmanna-verse&#34;。任何人都可以帮我解决这个问题吗?
我还包括来自控制台的错误和来自votd.js文件的代码。也许它与我的代码的语法有关? Console errors and .js file code
答案 0 :(得分:1)
http://www.ourmanna.com/verses/api/js/
包含此内联脚本(格式良好):
(function(){
var mannaverse='For the LORD is our judge, the LORD is our lawgiver, the LORD is our king; it is he who will save us.';
var mannaverse_reference='Isaiah 33:22';
var mannaverse_version='NIV';
if(document.getElementById('ourmanna-verse')!==null){
document.getElementById('ourmanna-verse').innerHTML='<div id="mannaverse-container"><p id="mannaverse">'+
mannaverse+'</p><p id="mannaverse-reference">'+
mannaverse_reference+' <small id="mannaverse-version"><i>('+
mannaverse_version+')</i></small></p></div>';
}
})();
votd.js
包含对此的HTML脚本引用:
<script src="http://www.ourmanna.com/verses/api/js/" type="text/javascript">
</script>
这不起作用,因为votd.js
只能包含javascript。
我猜你想让弹出窗口调用这个远程JS文件。为此,您需要先将其直接添加到popup.html
:
<html>
<body>
<div id="ourmanna-verse">Loading...</div>
<script type="text/javascript" src="http://www.ourmanna.com/verses/api/js/"></script>
</body>
</html>
您还需要允许在manifest.json
中的内容安全策略中访问此远程脚本:
{
...
"content_security_policy": "script-src 'self' https://www.ourmanna.com blob: filesystem: chrome-extension-resource: ;object-src 'self'",
...
}
最后,您需要确保可以通过HTTPS提供源脚本。