SORU
9 ŞUBAT 2011, ÇARŞAMBA


bir WordPress kullanmak .(' ' I') canlı izle .()tıklatın

Daha iyi .live('click', function {...}); yerine .click(function {...}); kullanmak olacağı herhangi bir durum olup olmadığını merak ediyorum?

Anladığım kadarıyla canlı seçeneği daha iyi bir seçenek gibi görünüyor ve bu yüzden düz yerine hemen hemen tüm durumlarda onu kullanıyorum .() tıklatın, özellikle de verildi.

EDİT: Bu soruya başka bir parçası. Eğer asynchoronously tüm javascript yükleme yapıyorum .tıklayın, halen dom tüm öğeleri toplama. Değil mi?

CEVAP
9 ŞUBAT 2011, ÇARŞAMBA


Açıkça zaten var olan nesneler için tıklatın işleyicisi atama ve yeni nesneleri farklı bir şekilde işlemek istediğiniz zamanlar olabilir. Ama daha yaygın olarak, canlı her zaman işe yaramıyor. Zincirleme bir WordPress kullanmak ifadeleri gibi çalışmıyor:

$(this).children().live('click',doSomething);

Düzgün şekilde olayları DOM ağaç baloncuk nedeniyle çalışmak için bir seçici lazım.

Düzenleme:Birisi bu upvoted, belli ki insanlar hala böyle bakıyorlar. live bind deprecated Her ikisi de belirtmeliyim. IMO çok daha net bir sözdizimi olan .on() ile de gerçekleştirebilirsiniz. bind değiştirmek için:

$(selector).on('click', function () {
    ...
});

ve live değiştirmek için:

$(document).on('click', selector, function () {
    ...
});

Herhangi bir jQuery nesnesi kullanabilirsiniz tüm öğeleri içeren $(document), yerine tıklamaları takip ediyorsun, ama karşılık gelen elemanı aradığınızda bulunması gerekir.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • boniver

    boniver

    17 NİSAN 2006
  • Google Chrome

    Google Chrom

    1 EYLÜL 2008
  • Samantha Crain

    Samantha Cra

    30 EKİM 2008

İLGİLİ SORU / CEVAPLAR