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

  • bunnyboxx

    bunnyboxx

    17 NİSAN 2008
  • Kevin Bruckert

    Kevin Brucke

    30 Aralık 2006
  • Video-Tutorials.Net

    Video-Tutori

    15 Mart 2011

İLGİLİ SORU / CEVAPLAR