JQuery UI странность - PullRequest
       48

JQuery UI странность

0 голосов
/ 23 февраля 2011

Я очень плохо знаком с jQuery, но хочу учиться. Из-за этого я использую jsFiddle, чтобы поиграть и посмотреть, что можно сделать - ничего серьезного, просто играть с анимацией и т. Д., В частности, возможность анимировать между двумя классами.

Приступая к делу, вы можете взглянуть на это и дать мне знать, почему мне нужна .delay для его работы?

http://jsfiddle.net/Ps4Xn/2/

$('div').click(function() {    
    if ($(this).hasClass('clicked')) {
        $(this).delay(1).removeClass('clicked', 5000, 'easeInElastic');
    } else {
        $(this).delay(1).addClass('clicked', 5000, 'easeInElastic');
    }
});

Насколько я могу судить, я смогу избавиться от двух задержек, но когда я это сделаю, это не сработает.

1 Ответ

2 голосов
/ 23 февраля 2011

Давайте упростим вещи.

Не анимированная версия (jsfiddle) :

$('div').click(function() {
    $(this).toggleClass('clicked');
});

Правильно анимированная версия (jsfiddle)
Правильно анимированная версия (jsbin)

$('div').click(function() {
    $(this).toggleClass('clicked', 5000, 'easeInElastic');
});

Код работает на jsbin, но не на jsfiddle - с jsfiddle просто что-то шаткое. Это не твой код.
Я обычно избегаю использования jsfiddle для работы с jQueryUI, поскольку они не очень хорошо играют вместе.

...