SORU
16 Mayıs 2010, Pazar


JQuery DOM değiştirmek bir dinleyicisi var mı?

Aslında bu komut bir DİV içeriğini değiştirmek yürütmek istiyorum. Komut ayrı (chrome uzantısı ve web sayfası komut dosyası içerik kodu) olduğundan, sadece DOM hal değişimleri gözlemek bir yolunu bulmam gerek. Yoklama ayarlayabilirim ama bu çok baştan savma görünüyor.

CEVAP
18 Temmuz 2012, ÇARŞAMBA


Birkaç yıl sonra, artık resmen daha iyi bir çözüm var. DOM4 Mutation Observers itiraz DOM3 mutasyon olayları için bir yedek vardır. Şu anda satıcı öneki WebKitMutationObserver: Krom MutationObserver olarak ve Firefox uygulanır

MutationObserver = window.MutationObserver || window.WebKitMutationObserver;

var observer = new MutationObserver(function(mutations, observer) {
    // fired when a mutation occurs
    console.log(mutations, observer);
    // ...
});

// define what element should be observed by the observer
// and what types of mutations trigger the callback
observer.observe(document, {
  subtree: true,
  attributes: true
  //...
});

Bu örnek document ve tüm alt ağacı DOM değişiklikler dinler ve eleman öznitelikleri yanı sıra yapısal değişiklikler de ateş edecek. Taslak spec mutation listener properties geçerli: tam bir listesi vardır

childList

  • 5* *hedef çocuklarına mutasyonlar eğer ayarlı dikkate alınmalıdır.

öznitelikleri

  • Hedef öznitelikleri mutasyonlar true ayarlanır dikkate alınmalıdır.

characterData

  • 7* *hedef veri mutasyonlar eğer ayarlı dikkate alınmalıdır.

ağacı

  • Sadece hedef değil, aynı zamanda hedef torunları için mutasyonlar true ayarlanır dikkate alınmalıdır.

attributeOldValue

  • Eğer attributes mutasyon kayıt altına alınması gerekiyor önce gerçek ve hedef öznitelik değeri ayarlanmışsa true olarak ayarlayın.

characterDataOldValue

  • Eğer characterData mutasyon kayıt altına alınması gerekiyor önce gerçek ve hedef veri kümesi ise true ayarlayın.

attributeFilter

  • Eğer tüm öznitelik mutasyonlar dikkat edilmesi gereken öznitelik yerel isim listesi (ad olmadan) ayarlayın.

(Bu liste, Nisan ayından itibaren geçerli 2014; herhangi bir değişiklik için belirtimi kontrol edebilirsiniz.)

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • EEVblog

    EEVblog

    4 NİSAN 2009
  • efaustus9

    efaustus9

    16 HAZİRAN 2006
  • Top Gear

    Top Gear

    27 Mart 2006