jQuery animate не перемещается в нужное место - PullRequest
0 голосов
/ 29 ноября 2011

Я столкнулся с загадочной проблемой.Я использую функцию jQuery animate, и анимируемый объект не перемещается в указанную мною «левую» координату;скорее, левая координата всегда равна 0. Однако, верхняя координата движется, как и ожидалось.В какой-то момент у меня все работало нормально, и я кое-что переставил, и это прекратилось.

        var new_x,
            new_y,
            player_tranistion_holder;

        new_x = bg_app.boardModel[id_num].x+'px';
        new_y = (bg_app.boardModel[id_num].chips.length) * bg_app.game_utils.parse_css_dimension(selected_chip.chip.css('height'));

        console.log(new_x) //outputs 300px for example - the expected value;

        selected_chip.chip.animate({'left':  new_x, 'top': new_y }, 500, 'easeInOutQuad', function () {
               console.log(selected_chip.chip.css('left'); //output is 0
        });

Есть идеи, что может привести к тому, что это облажается?То, что я изменил вокруг этого, было просто в том, как функция стала вызываться, ничего в самой функции.У меня есть какая-то синтаксическая ошибка, которую я пропускаю?

Я поместил здесь битый сайт:

http://www.warunicorn.com/bg_show_busted/

, вот пример с его работой:

http://www.warunicorn.com/bg_show/

Буду признателен за любой совет.

1 Ответ

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

Я нашел проблему.При использовании функции animate, если новое переданное значение совпадает с текущим значением объекта, jQuery запутывается и устанавливает значение 0. Я не проводил подробное тестирование по этому вопросу, и поэтому могут быть исключения, когда он работает, но в этом случае это была проблема.

...