JQuery анимация в Firefox - PullRequest
       10

JQuery анимация в Firefox

0 голосов
/ 30 апреля 2010

Я использую следующий код для анимации с использованием jquery.когда я нажимаю на элемент списка, соответствующий div скользит вниз, и непрозрачность становится равной '1'.Когда я нажимаю на другой элемент списка, предыдущий элемент поднимается и исчезает, а следующий - вниз.

var id_prev;
 var id_new;
$("#tag ul li ").click(function(event){
    var i = $(this).index()+1;
    var id_new="#person"+i;
    if(id_new != id_prev){
        $(id_prev).animate({top:'300px',opacity:'0'},500);
        $(id_prev).delay(200).css({'z-index':'0'});
        $(id_new).delay(200).css({'z-index':'300'});
        $(id_new).delay(200).animate({top:'300px',opacity:'0'},500);
        $(id_new).delay(200).animate({top:'330px',opacity:'1'},500);
        id_prev = id_new;
    }

});

1 Ответ

0 голосов
/ 30 апреля 2010

Это, вероятно, не сработает так, как вы хотите, потому что, если они нажмут на последний?

Но, во-первых, вы не говорите, что это что-то:

var id_prev;
 var id_new;

Вы сказали, что они переменные, но не то, что они содержат. Вам нужно что-то вроде этого наверху:

if ($(this).index() > 0) {    
   var id_prev = $(this).index()-1;
}

Так что, если div не первый, установите предыдущий идентификатор на выбранный, минус 1 ...

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

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