2013-03-08 14 views
16

Birden çok olayı .on() kullanarak devretmenin en iyi yolu nedir? jQuery .on() delegated mouseenter ve mouseleave

Bu

bir yetkilendirilen olay için sözdizimi şöyledir:

$(document).on('mouseeenter','.foo', function(){}); 

Ve burada birden fazla etkinlik için sözdizimi (yetki verilmiş değil) 'dir: Daha özlü bir yolu olup olmadığını merak ediyorum

$('.foo').on({ 
    mouseenter: function(){ 
     //stuff 
    }, 
    mouseleave: function(){ 
     //stuff 
    } 
}); 

sonra bunu yapmak için:

$(document).on('mouseenter', '.foo', function(){}) 
      .on('mouseleave', '.foo', function(){}); 

Bu şekilde yapmam gerekirse büyük bir anlaşma değil, daha çok merak ediyorum Bunun hakkında her şeyden.

+0

@ FrédéricHamidi Evet, öyle görünüyor. Bunun için üzgünüm. –

+2

Sorun değil. Diğer sorudaki yorumlara göre, bu konuyu ilk sırada araştırmak kolay değildir. –

cevap

34
$(document).on({ 
    mouseenter: function(){ 
     //stuff 
    }, 
    mouseleave: function(){ 
     //stuff 
    } 
}, '.foo'); 
+1

Bu, yeni sürümler için kullanımdan kaldırılan live() sürümünden daha iyidir :) –

İlgili konular