Jquery Fadein и Fadeout скрипт не работает - PullRequest
1 голос
/ 07 октября 2009

Эта функция должна вызывать fadeIn id = "Box" при нажатии на class = "display", если Box не анимирован и имеет отображаемое значение none, или fadeOut, если у #Box отображаемое значение равно not none.Что не так?

$(document).ready(function() {
    $('.display').click(function() {
        var currentDisplayValue = $('#Box').css('display');

        if (':animated') {
        stop()
        };

        else if (currentDisplayValue == 'none') {
            $('#Box').fadeIn("slow");
        };

        else {
            $('#Box').fadeOut("slow");
        };
    });

Спасибо

1 Ответ

3 голосов
/ 07 октября 2009

Попробуйте:

$(function() {
  $(".display").click(function() {
    var box = $("#Box");
    if (box.is(":animated")) {
      box.stop();
    } else if (box.is(":hidden") {
      box.fadeIn("slow");
    } else {
      box.fadeOut("slow");
    }
  });
});

У вас есть некоторые синтаксические ошибки (например, точки с запятой после фигурных скобок), и stop() необходимо применить к набору jquery. Наконец, не проверяйте текущее значение CSS отображения, как вы делаете. Вместо этого используйте селектор :hidden.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...