同一页面中的不同 jQuery 源代码和版本(googleapi,代码)

Posted

技术标签:

【中文标题】同一页面中的不同 jQuery 源代码和版本(googleapi,代码)【英文标题】:Different jQuery sources & versions in same page (googleapi, Code) 【发布时间】:2018-05-17 21:26:42 【问题描述】:

我要分页,首先是可排序列表 (li),它使用了以下 javascript

<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.1/themes/base/jquery-ui.css" rel="stylesheet" type="text/css" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.1/jquery-ui.min.js"></script>

mmenu 的第二页有以下 jquery:

<script type="text/javascript" src="http://code.jquery.com/jquery-3.2.1.min.js"></script>
<script type="text/javascript" src="/theme/mmenu/dist/jquery.mmenu.all.js"></script>

当我想将两个脚本添加到一个页面中(菜单和可排序正在工作的地方)时,会出现一些错误,因为当我删除可排序的 Jquery 时 mmnue 将起作用,而当我删除可排序的 Jquery 然后 mmenu不行!

那么请问如何让它们在一个页面上工作?

【问题讨论】:

【参考方案1】:

这可以使用jQuery.noConflict()

类似:

<script src='jquery-1.3.2.js'></script>
<script>
var jq132 = jQuery.noConflict();
</script>
<script src='jquery-1.4.2.js'></script>
<script>
var jq142 = jQuery.noConflict();
</script>

查看更多示例:http://blog.nemikor.com/2009/10/03/using-multiple-versions-of-jquery/

【讨论】:

未捕获的类型错误:$ 不是函数 你点击链接了吗?如果是这样,您会意识到 jQuery 不再被称为 $.xxx()。它现在被引用为 jq132.xxx() 或 jq142.xxx() 或任何你命名的变量。 您的意思是我必须用 jq123 替换每个 $!?对于我写的内容来说还可以,但是对于下载的 js 文件,我应该更改其中的所有 $ 吗?!

以上是关于同一页面中的不同 jQuery 源代码和版本(googleapi,代码)的主要内容,如果未能解决你的问题,请参考以下文章

同一个页面,加载不同版本jQuery

如何在同一页面上运行不同版本的 jQuery?

在同一个项目中加载多个 jquery 版本但不同的页面

同一页面上的多个版本的 JQuery [重复]

如何在同一页面上隔离不同的 javascript 库?

Bootstrap 4如何在同一页面上使用多个jQuery版本[重复]