【问题标题】:Javascript external script for Chrome Extension not workingChrome 扩展的 Javascript 外部脚本不起作用
【发布时间】:2015-04-18 04:16:11
【问题描述】:

我目前正在开发 Chrome 扩展程序,但它似乎无法执行任何 Javascript。

$(document).ready(function () {
    $("#overlay").hide();
});

在这个例子中,我试图隐藏一个 id 为“overlay”的 div,但它似乎不起作用。存储在外部文件(popup.js)中

清单:

{
    "name": "Test",
    "version": "0.0.1",
    "manifest_version": 2,
    "description": "",
    "offline_enabled": true,
    "background": {
     "scripts": [
         "js/background.js"
           ]
    },
    "icons": { "16": "android-16.png",
           "48": "android-48.png",
           "128": "android-128.png"
    },
    "browser_action": {
        "default_icon" : "android-128.png",
        "default_title": "",
        "default_popup": "index.html"
    },
    "permissions": [
        "background", "unlimitedStorage", "tabs"
    ],
    "web_accessible_resources": [
    "index.html","js/popup.js"
    ]
}

位于正文结束标记之前的 HTML 链接:

<script src="js/background.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script src="js/popup.js"></script>

【问题讨论】:

标签: javascript html google-chrome google-chrome-extension manifest


【解决方案1】:

正如@Xan 由于CSP will block the script 而提到的那样,避免这种情况并使其正常工作的最佳方法是下载 jquery.js 并将其作为扩展的一部分。

【讨论】:

  • 嘿,@Xan 你能说得更具体点吗?下载 jquery.js 并将其添加到扩展程序都不适合您?
  • 不,第一部分。添加权限无济于事,CSP will block the script。有一种方法可以解决这个问题,但是您的答案有一半是不正确的。在您进行编辑之前,它是完全不正确的。
  • 感谢@Xan 我已修复,但我认为这个问题可以标记为重复,正如您在评论中提到的那样。
猜你喜欢
  • 2016-12-23
  • 1970-01-01
  • 2011-10-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多