Конфликт от JQuery 1.5.2 до Jquery 1.6 или выше - PullRequest
0 голосов
/ 23 ноября 2011

У меня проблема с этим кодом, и я не могу найти проблему.Он работает с JQuery 1.5.2 и ниже, но не с JQuery 1.6 и выше.

Вот код и спасибо за вашу помощь!

$(document).ready(function () {

    $(".selected").stop().animate({'backgroundPosition':'(0 -28)'}, {duration:200});

    $('#ver li a').hover(

        function ()
        {
            if (!($(this).hasClass("selected")))
            {
            height = $(this).height() * (1);
            $(this).stop().animate({'backgroundPosition':'(0 ' + -height + ')'}, {duration:200});   
            }
        }, 

        function () 
        {
            if (!($(this).hasClass("selected")))
            {
                $(this).stop().animate({'backgroundPosition':'(0 0)'}, {duration:200});
            }   
        }
    );

});

Ответы [ 2 ]

1 голос
/ 27 февраля 2012

Я столкнулся с подобной проблемой, но в моем случае я анимировал только ось X фона, используя что-то вроде "backgroundPosition: '+ = 1350px 0px'", по какой-то причине это перестало работать, когда я перешел на jQuery 1.6 .2 ... Все мои другие анимационные экземпляры работали нормально, в том же блоке.

В конце (после долгого сеанса отладки) я заметил, что если я удалил значение Y-оси из вызова, это сработало. поэтому "backgroundPosition: '+ = 1350px 0px'" больше не работает, но работает "backgroundPosition: '+ = 1350px'". Странно то, что он даже не выдает ошибку, анимация обрабатывает, но ничего не происходит (так что ошибки нет). На данный момент я не могу придумать, как анимировать фоновое изображение на оси Y.

0 голосов
/ 23 ноября 2011

Мартин, я рекомендую вам загрузить и использовать инструмент DIFF, такой как WinMerge (http://winmerge.org/), чтобы увидеть различия между двумя версиями самого jQuery.

Анализируйте изменения, обращая особое внимание на изменения в функциях, которые вы используете в своем коде. Например .animate (), .hasClass (), .height () и т. Д.

Полагаю, вы найдете ответ после этого.

Кроме того, вы можете проанализировать журналы изменений для каждой из версий jQuery. от 1.5.2 до 1.6.

...