javascript - 其他 .js 文件无法访问 jQuery

标签 javascript google-chrome-extension

这是一个 html 页面:

    <html>
<head>
    <script src="http://code.jquery.com/jquery-1.9.0.min.js" type="text/javascript"></script>
</head>
<body>
    <script src="background.js" type="text/javascript"></script>
</body>
</html>

这里是 background.js:

alert("Alert1!");
var test = jQuery.trim(" Words and / { objects & things");
alert("Alert2!");

Alert1 有效,但 alert2 从不播放。如果我删除 jQuery 然后它工作。我已经在标题和正文中尝试了 background.js 文件。我做错了什么?

谢谢。

最佳答案

http://code.jquery.com/jquery-1.9.0.min.js下载jquery.js并将其内联到您的扩展目录,并按照此处所示内联引用它。

根本原因

Chrome 扩展不支持对文件的外部引用。

工作版本

<html>
<head>
    <script src="jquery-1.9.0.min.js" type="text/javascript"></script>
    <script src="background.js" type="text/javascript"></script>
</head>
<body>
</body>
</html>

编辑 1

工作版本

list .json

将 Jquery 和您的代码注册到 list 文件

{
    "name": "Jquery In Background",
    "description": "http://stackoverflow.com/questions/14438044/jquery-cant-be-accessed-by-other-js-file",
    "background": {
        "scripts": [
            "jquery.js",
            "background.js"
        ]
    },
    "version": "1",
    "manifest_version": 2
}

背景.js

你的代码和以前一样

alert("Alert1!");
var test = jQuery.trim(" Words and / { objects & things");
alert("Alert2!" + test);

关于javascript - 其他 .js 文件无法访问 jQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14438044/

相关文章:

javascript - Canvas 另存为图像 [canvg - 在 Canvas 上渲染 svg]

google-chrome - 如何隐藏我的 chrome 扩展源代码

javascript - JQuery执行顺序、同步问题

javascript - 使用 Chrome 扩展,如何使用长期连接(端口)将消息从后台脚本传递到内容脚本?

javascript - 后台脚本中的setInterval

javascript - 放大时自动隐藏文本

javascript - Canvas 图像遮蔽/重叠

javascript - CORS header 在浏览器中被剪切,状态代码 >= 400

javascript - 如何在选项卡中获取所有 frameId?

php - javascript根据另一个多选框中的选择禁用多选框