谷歌浏览器扩展程序清单加载jquery

时间:2016-09-21 04:25:26

标签: jquery google-chrome google-chrome-extension

我正在尝试在清单的content_scripts中加载jquery但是当我加载一个页面时,他的页面中已经加载了一个jquery,下拉列表由于某种原因停止工作,我找不到任何错误在我的控制台日志中。因此,如果我在清单的content_scripts中删除了jquery,则下拉列表工作正常,这就是为什么我认为这是因为当前页面已经加载了jquery库。

"content_scripts": [{
        "matches": [
            "http://*/*",
            "https://*/*"
        ],
        "js": ["js/jquery-2.2.4.js", "js/custom.js"],
    }],

1 个答案:

答案 0 :(得分:1)

内容脚本在与主窗口不同的js上下文中运行,因此它们一定不会发生冲突。

您也可以尝试通过执行以下命令从窗口上下文范围中删除jQuery:

var myJquery = jQuery.noConflict(true);

但是您需要将脚本移动到document_start,这样可以通过添加到清单文件script_context部分来实现:

"content_scripts": [{
        "matches": [
            "http://*/*",
            "https://*/*"
        ],
        "js": ["js/jquery-2.2.4.js", "js/custom.js"],
        "run_at": "document_start"
    }]

但是如果你这样做了,你的custom.js脚本必须准备好在文件尚未准备就绪时执行状态。

如果您附加更多来源,那将是更相关的解决方案。

相关问题