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

  • DanceOn

    DanceOn

    6 Mayıs 2006
  • Jimmie Jones

    Jimmie Jones

    16 Kasım 2007
  • Photoshop Tutorials

    Photoshop Tu

    22 HAZİRAN 2011

İLGİLİ SORU / CEVAPLAR