使用不符合noconflict的外部JavaScript文件

时间:2015-12-11 20:51:53

标签: javascript jquery

我遇到需要从供应商加载外部JavaScript文件的情况。该JavaScript文件需要jQuery并在脚本中使用美元符号。

我的网站在noconflict模式下使用jQuery,因此在包含js文件时,我收到$不是函数的错误。

有没有办法可以包含这个脚本,以便它可以在noconflict模式下使用我的网站?

1 个答案:

答案 0 :(得分:2)

如果您的服务器上安装了PHP,您可以创建某种代理,从原始源获取该外部文件,将其包装在IIFE周围并返回它,如下所示:

<?php
echo "(function($) {";
echo file_get_contents("http://link.to.external/script.js");
echo "}(jQuery));";
?>

它将$设为jQuery别名,但仅限于此功能,因此此脚本可以使用,但其他脚本不会受到影响。

当然,您可以使用除PHP之外的其他语言。

此外,如果您的网站流量很大,则应考虑缓存结果,例如15分钟。