1. 程式人生 > >有兩個不同版本的jQuery庫,衝突的解決辦法。

有兩個不同版本的jQuery庫,衝突的解決辦法。

這是1.5.1版本 和1.10.2版本的jQuery:

<script src="js/jquery-1.5.1.min.js"></script>
<script type="text/javascript">
    var $151 = $;//新的命名
</script>

<script src="js/jquery.min.js"></script>
<script type="text/javascript">
    var $1102 = $;//新的命名
</script>
給他們一個新的命名,你使用不同的庫時,你可以選擇用哪個庫的函式,這樣避免了他們之間的衝突。

下面是用的第一個jQuery中的函式:

       $151(document).ready(function () {
            $151('#jqChartByLine').jqChart({
                title: { text: '按里程統計' },
                axes: [
                    {
                        location: 'left',//y軸位置,取值:left,right
                        minimum: 0,//y軸刻度最小值
                        maximum: $scope.Max,//y軸刻度最大值
                        interval: parseInt($scope.Max/10)//刻度間距
                    }
                ],
                series:eval( $scope.jqString)
            });
        });

下面是用的第二個jQuery的函式:
    $1102(function () {
        $scope.$apply($1102("#searchWordID").autocomplete({
            source: $scope.lineName
        }));
    });
總結:

也就是說將他們原來的$都重新命名一次。讓他們能唯一對應自己庫裡邊的函式,從而避免衝突。