2013-01-14 71 views
1

我會一個接一個地執行這段代碼。這是可能的?事件發生後的事件

$('#carouselselectitem1').click(function() { 
    $('#foo2').animate({opacity: "0"}, function() { 
     $(this).load("carousel/todos.html"); 
     $('#foo2').animate({"opacity":"1"}); 
     $('#carouselselectitem1').css({'background-color' : '#FF0000' , 'opacity' : '1'}); 
    }); 
}); 
+2

不知道明白這個問題。如果你把它放在一個函數中,你可以一次又一次地調用它,或者使用'setTimeout'在一段時間後調用它。 – chrisbradbury

回答

2

如果我理解你的問題的權利,你必須使用回調函數:

$('#carouselselectitem1').click(function() { 
    $('#foo2').animate({opacity: "0"}, function() { 
     $(this).load("carousel/todos.html", function() { 
      $('#foo2').animate({"opacity":"1"}, function() { 
       $('#carouselselectitem1').css({'background-color' : '#FF0000' , 'opacity' : '1'});       
      }); 
     }); 
    }); 
}); 
+0

完美!對不起,我的英語xD和謝謝! –

1

您可以觸發使用jQuery的事件。看看這裏: Trigger Event有在底部的例子,button_2上button_觸發點擊事件1

1

只是測試它:

$('#carouselselectitem1').click(function() { 
    $('#foo2').animate({opacity: "0"},1000 , function() { 
     $(this).load("carousel/todos.html"); 
     $('#foo2').animate({"opacity":"1"},1000,function(){ 
      $('#carouselselectitem1').css({'background-color' : '#FF0000' , 'opacity' : '1'}); 
     }); 
    }); 
}); 
+0

此代碼的作品!但是Slevin的代碼工作更加流暢。謝謝! –

1

您需要使用一個回調爲load功能,與其他一起回調。 我也建議緩存選擇器。

$('#carouselselectitem1').click(function(){ 
    var carousel = $(this), 
     foo2  = $('#foo2'); 
    foo2.animate({opacity: "0"}, function(){ 
    foo2.load("carousel/todos.html", function(){ 
     foo2.animate({opacity:"1"}, function(){ 
     carousel.css({'background-color' : '#FF0000','opacity' : '1'}); 
     }); 
    }); 
    }); 
});