2009-09-29 12 views
12

"myClass" sınıfından bir şey eklediğimde bu öğe üzerinde bir işlev aramak istiyorum. Bu hariçJQuery kullanarak bir sayfaya bir öğe eklendiğinde nasıl hareket edilir?

jQuery(".error_message").live("load",function(){ 
    alert("test"+this); 
}); 

... yok:

O satırlarında bir şey olurdu.

Bunu yapmanın en iyi yolu nedir?

+0

Öğeleri DOM'a nasıl ekliyorsunuz? – Colin

+0

ajax aracılığıyla yeni bir html yükledim ve DOM – marcgg

+0

'a atıyorum Bu öğeleri ekleyebileceğim farklı yollar var, bu yüzden bu işlevler hakkında geri arama yapmaktan kaçınmak istiyorum. – marcgg

cevap

16

Sorunuzun kısa, doğrudan cevabı "hayır yapamaz" olur. Ancak, birkaç dakika önce yaptığınız yorumdan, farklı yollarla öğeler eklemek istediğinizi ve bu yeni eklenen öğeleri işlemek için tek bir birleştirilmiş yönteme sahip olduğunuzu görüyorum. Başka bir yaklaşım önerebilir miyim? Trigger custom events.

işe yarayacağını yolu şu şekildedir:

Şimdi
$('.error_message').trigger('load'); 

sizin .live ('yük' ...) şey: her yerde bittiğinde, bir satır ekleyin hata mesaj öğesini yüklemek çalışacak.

+0

Bu çok ilginç bir cevap. Aradığım şeyin bu olup olmadığından emin değilim ... biraz rahatsız görünüyor. Ama jquery'nin hacky’i harikadan anlattığını bilmiyorum. Yani, bunun iyi bir uygulama olduğunu söyleyebilir misiniz? – marcgg

+1

Bunun için kefil olacağım - bu konuyla ilgili bir belge düzeyinde bu konuyla ilgili iyi bir makale var: http://www.michaelhamrah.com/blog/index.php/2008/12/event-pooling-with -jquery kullanarak-bind-ve-tetik-yönetme-karmaşık-javascript/ –

+0

herhangi bir fikir nasıl .live() ne yapar? – Kip

İlgili konular