Jquery与jquery工具冲突

时间:2013-01-18 22:32:36

标签: javascript jquery

我的问题是在添加:

之后
<script src="http://cdn.jquerytools.org/1.2.7/full/jquery.tools.min.js"></script>

到我的网站,像nivoslider这样的插件和其他jquery脚本都无法正常工作。

但是为了使下面的代码工作,我需要“jquery tools”

<script type="text/javascript"><!--
    function GetAvailProductSizes() {
        $('select#productsize option').remove();
        $('select#productsize').append('<option value=""><? echo $langdata['oneprodpage_selectsize']; ?>...</option>');

        var color = $('#productcolor').val();
        if (color > 0) {
            var availsizes;
            var http_request = new XMLHttpRequest();
            http_request.open( "GET", '<? echo ROOT; ?>/autocompleteavailsizes/?productid=<? echo $thisproduct['id']; ?>&color=' + color, true );
            http_request.send(null);
            http_request.onreadystatechange = function () {
                if ( http_request.readyState == 4 ) {
                    if ( http_request.status == 200 ) {
                        availsizes = eval( "(" + http_request.responseText + ")" );

                        for (var i = 0; i < availsizes.length; i++) {
                            $('select#productsize').append('<option value="' + availsizes[i].id + '">' + availsizes[i].name + '</option>');
                        };
                    } else {
                        alert( "There was a problem with the URL." );
                    }
                    http_request = null;
                }
            };
        };
    }
//-->
</script>

仅当我包括:

时才有效
<script src="http://cdn.jquerytools.org/1.2.7/full/jquery.tools.min.js"></script>

但是,如果我这样做,其他jquery脚本不起作用,我的意思是nivoslider和其他简单的弹出div ...

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:3)

jQuery Tools包含它自己的jQuery版本。包含一个不包含它自己的jQuery的jQuery工具版本。 http://cdn.jquerytools.org/1.2.7/all/jquery.tools.min.js

确保首先包含其他jquery,然后是jquery工具,然后是其他jquery。

<script src="jquery.min.js"></script>
<script src="http://cdn.jquerytools.org/1.2.7/all/jquery.tools.min.js"></script>
<script src="nivoslider.js"></script>
...