JQuery UI toggleClass длительность ведет себя странно - PullRequest
4 голосов
/ 16 февраля 2012

Я использую jQuery UI .toggleClass (class, [duration]), чтобы переключать красный фон на блоке 100x100, но результаты, которые я получаю, странные.См. http://jqueryui.com/docs/toggleClass/ для справки.

Как вы можете видеть из этого примера - http://jsfiddle.net/xkrX9/ - first нажатие на блок div # немедленно переключает красный фон (без [продолжительности]), а затем снова переключает его обратно в белый цвет примерно через 1 с без второго нажатия кнопки. второй щелчок (без перезагрузки страницы) приводит к тому, что класс .red переключается, как и ожидалось, с продолжительностью 1000 мс.

Что здесь не так?Спасибо за понимание!

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js"></script>

<style>
    #box { width: 100px; height: 100px; border: 1px solid #999; }
    .red { background: red; }
</style>

<div id="box"></div>

<script>
    $('#box').click(function() {
        $(this).toggleClass('red', 1000);
    });
</script>

1 Ответ

2 голосов
/ 17 февраля 2012

Казалось бы, это ошибка. Если атрибут класса отсутствует, он не будет работать, но как только вы добавите attibute класса в узел, он будет работать нормально,

http://jsfiddle.net/xkrX9/3/

Я бы подал отчет об ошибке.

jQUery UI Ошибка # 8113

...