Chrome扩展程序加载Jquery错误

3
我正在开发一个Chrome扩展程序,我的内容脚本出现了错误。
错误信息为“$/jQuery未定义”。
因此,我尝试使用清单文件嵌入jQuery,并在我的扩展文件夹中下载了jQuery。但由于某种原因,我收到以下错误信息:
"拒绝加载chrome-extension://gfdmfdmhnoenciioooikdifmdkechdbl/jquery-1.10.2.min.map。资源必须在web_accessible_resources清单键中列出,以便页面外的扩展程序加载它们。"
我尝试了一些修改清单文件的方法,但似乎都不起作用。现在我正在尝试另一种方法,但仍然出现错误。
{
    "manifest_version": 2,

    "name":    "My Extension",
    "version": "0.0",
    "offline_enabled": false,

    "content_scripts": [{
        "matches":    ["*://*.sitedomain.com/*"],
        "js": [
                "jquery-1.10.2.min.js", 
                "content.js"
            ],
        "run_at":     "document_end",
        "all_frames": false
    }]
}

我无法编辑实际使用的网站,因此无法以传统方式在标题中加载jQuery,这就是为什么我尝试使用扩展名加载,以便我的内容脚本可以工作。感谢任何帮助。


1
jquery-1.10.2.min.map 出现了错误,但是在你的内容脚本中提到了 jquery-1.10.2.min.js。你确定路径中没有拼写错误吗? - Sachin Jain
@blunderboy 我的文件夹里有jquery-1.10.2.min和jquery-1.10.2.min.map文件,但我看不到类型。我尝试使用web_resources包含.map文件,但仍然收到错误信息。 - user3089477
你是否在使用源代码映射? - Sachin Jain
可能是重复的问题:jQuery的jquery-1.10.2.min.map触发404(未找到)错误 - Teepeemm
1个回答

3
只需从jQuery文件顶部删除此行。
//@ sourceMappingURL=jquery-1.10.2.min.map

如果您查看 Jquery 1.10.2 的源代码,您会发现在顶部包含了源映射行。
我希望您不要使用源映射。有关更多详细信息,请查阅以下链接:
  1. http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/
  2. jQuery的jquery-1.10.2.min.map 触发404(未找到)

替代方法

  1. jquery下载页面 下载源映射文件,并将 jquery-1.10.2.min.map 放入扩展目录中。
  2. 同时下载 未压缩源代码 并放入扩展目录中。
  3. 基本上您需要三个文件 [SourceMap,Compressed,Uncompressed]。
  4. 将这些映射文件路径和未压缩文件路径添加到 web_accessible_resources 中。

@ExpertSystem 我实际上没有尝试过那种方法。是的,你说得对。我应该根据Konrad的评论更新答案。非常感谢。 - Sachin Jain
好的,我将不得不尝试备用方法,因为出于某种原因,我又收到了错误。 - user3089477
我试过了,但我的失败了。对你来说,删除行的方法一点用都没有吗? - Sachin Jain
最新的jQuery版本(1.11和2.1)不再包含此行代码,原因是为了……。 - Teepeemm
感谢 @Teepeemm 告诉我们。 - Sachin Jain

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接