SORU
13 ŞUBAT 2012, PAZARTESİ


Geri arama ne zaman CSS3 geçiş tamamlanır

DOM öğesinden kaldırmak bittiğinde bir elemanın (0-opaklığı geçiş) ve daha sonra fade out yapmak istiyorum.

JQuery bu "bir animasyon sonra daha ne" tamamlar. Kaldırmak belirtebilirsiniz beri bellidir Ama eğer CSS3 geçişleri kullanarak animasyon istersem zaten oraya geçiş/animasyon tamamlandığında.

CEVAP
13 ŞUBAT 2012, PAZARTESİ


Geçişler için aşağıdaki jQuery ile bir geçiş sonuna algılamak için kullanabilirsiniz:

$("#someSelector").bind("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd", function(){ ... });

Mozilla mükemmel bir referans vardır:

https://developer.mozilla.org/en/CSS/CSS_transitions#Detecting_the_completion_of_a_transition

Animasyonlar için çok benzer

$("#someSelector").bind("animationend webkitAnimationEnd oAnimationEnd MSAnimationEnd", function(){ ... });

Bağlama içine tarayıcı öneki olay dizeyi iletebilirsiniz not() metodu aynı anda destekleyen tüm tarayıcılarda olay ateş desteği için.

Güncelleme:

Yorum Ördek bıraktığı başına: işleyici yalnızca bir kez patlar. emin olmak için bir WordPress kullanmak .one() yöntemi kullanın Örneğin:

$("#someSelector").one("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd", function(){ ... });

$("#someSelector").one("animationend webkitAnimationEnd oAnimationEnd MSAnimationEnd", function(){ ... });

Güncelleme 2:

bind() jQuery yöntem kalmıştır, ve on() yöntemjQuery 1.7olarak tercih edilir. bind()

Ayrıca ateş olacak sağlamak için geri arama fonksiyonu off() yöntem yalnızca bir kez kullanabilirsiniz. Burada one() yöntemi kullanılarak eşdeğer bir örnek:

$("#someSelector")
.on("animationend webkitAnimationEnd oAnimationEnd MSAnimationEnd",
 function(e){
    // do something here
    $(this).off(e);
 });

Referanslar:

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • amc

    amc

    21 EYLÜL 2005
  • Bigapplemagic

    Bigapplemagi

    22 EYLÜL 2011
  • DominicFear

    DominicFear

    30 Kasım 2006