gpt4 book ai didi

javascript - JQuery noConflict 运行两个版本

转载 作者:行者123 更新时间:2023-12-03 12:36:34 27 4
gpt4 key购买 nike

我有以下代码,

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js" type="text/javascript">
alert($().jquery); // Version 2.1.0
jQuery.noConflict();
alert($().jquery); // Previous version
</script>

我想使用第二个版本做一些事情,然后返回 $变量返回到第一个版本,因此现有的 jQuery 函数仍然有效。但是当我运行这个时,$().jquery返回版本 1.3.2,这是旧版本。有谁能帮忙吗?

谢谢

最佳答案

正如 jQuery API 所说,

如果由于某种原因加载了两个版本的 jQuery(jQuery API 不推荐),从第二个版本调用 $.noConflict( true ) 会将全局作用域的 jQuery 变量返回到第一个版本的变量。

<script src="other_lib.js"></script>
<script src="jquery.js"></script>

<script>
$.noConflict();
// Code that uses other library's $ can follow here.
</script>

此技术与 .ready() 方法别名 jQuery 对象的能力结合起来特别有效,因为在传递给 .ready() 的回调中,如果您愿意,可以使用 $ 而不必担心以后发生冲突:

<script src="other_lib.js"></script>
<script src="jquery.js"></script>

<script>
$.noConflict();
jQuery( document ).ready(function( $ ) {
// Code that uses jQuery's $ can follow here.
});
// Code that uses other library's $ can follow here.
</script>

在一个项目中我将其用作

var j = jQuery.noConflict();
// Do something with jQuery
j( "div p" ).hide();

也喜欢这个

jQuery.noConflict();
(function( $ ) {
$(function() {
// More code using $ as alias to jQuery
});
})(jQuery);

我希望这会有所帮助。

关于javascript - JQuery noConflict 运行两个版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23712015/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com