Jquery.noConflict问题?

时间:2011-08-10 10:41:27

标签: jquery

我需要两个jQuery源代码,我不知道我是否正确实现.noConflict?

<link href="count/jquery.countdown.css" rel="stylesheet" type="text/css" /> 
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
    <script type="text/javascript" src="Count/jquery.countdown.js"></script>

    <script type="text/javascript"> 
        $(function () {
            var Day = new Date();
            Day = new Date(2015, 11, 22, 09, 00, 00, 00)
            $('#defaultCountdown').countdown({until: Day});
            $('#year').text(Day.getFullYear());
        });
        jQuery.noConflict(true);
    </script>               

    <link rel="stylesheet" href="Video/css/jquery.fancybox.css" type="text/css" media="screen" />
    <link rel="stylesheet" href="Video/css/style.css" type="text/css" media="screen" />     
    <script type="text/javascript" src="Video/js/jquery-1.3.2.min.js"></script>     
    <script type="text/javascript" src="Video/js/flowplayer-3.1.1.min.js"></script>
    <script type="text/javascript" src="Video/js/jquery.fancybox-1.2.1.pack.js"></script>
    <script type="text/javascript" src="Video/js/jquery.easing.1.3.js"></script>
    <script type="text/javascript" src="Video/js/fancyplayer.js"></script>
    <script type="text/javascript"> 
        var videopath = "http://www.site.co.uk/Video/";
        var swfplayer = videopath + "videos/flowplayer-3.1.1.swf";
    </script>

1 个答案:

答案 0 :(得分:2)

更新:关于您的更新,我认为您只需要为就绪处理程序指定一个参数:

$(function($) {
    //...
});
jQuery.noConflict(true);

因此处理程序内的代码引用第一个版本而不引用第二个版本(第二个jQuery include将覆盖$否则)。


我认为如果你传递true,它本质上也会重置jQuery,你必须自己分配对该jQuery版本的引用:

var jQueryVersionX = jQuery.noConflict(true);
jQueryVersionX(function($) {
    // $ references the jQueryVersionX;
});

jQuery将对自身的引用传递给ready处理程序的第一个参数。

如果在标题中包含这两个脚本,则jQuery将首先引用第二个包含的版本。致电jQuery.noConflict(true)后,jQuery将引用第一个包含的版本。

但请注意documentation

  

如果有必要,我们也可以通过将jQuery作为参数传递给方法来释放true名称。这很少是必要的,如果我们必须这样做(例如,如果我们需要在同一页面上使用多个版本的jQuery库),我们需要考虑大多数插件都依赖于jQuery变量,在这种情况下可能无法正常运行

确保按正确的顺序包含版本和插件。