SORU
2 NİSAN 2012, PAZARTESİ


Düğüm nesne ve Element nesne arasındaki fark?

Düğüm nesne ve Element nesne arasında kafam iyice karıştı. belge.() getelementbyıd Elemanı belge ise nesne döndürür.()getElementsByClassName "döndürür. (Öğeleri ya da Düğümleri Koleksiyon?) NodeList

bir div varsa Öğesi bir Nesne Düğüm nesne div ne hakkında?

Düğüm bir Nesne nedir?

Belge nesne, Öğe, nesne ve Metin Nesne de nesne Düğümü vardır.

David Flanagan kitap başına 'Belge nesne Öğesi Nesneleri ve metin nesneleri tüm Düğüm nesnelerdir'.

Nasıl bir nesne özellikleri nesne Öğesi olarak Düğüm nesnesinin yöntemleri/miras...?

Evet, Düğüm Sınıf sanırım ve Eleman Sınıfı miras ilk ağacı ile ilgili.

 <div id="test">
           <p class="para"> 123 </p>
           <p class="para"> abc </p>
 </div>
 <p id="id_para"> next </p>

document.documentElement.toString();    // [object HTMLHtmlElement]

var div = document.getElementById("test");
div.toString();                         // [object HTMLDivElement]                       

var p1 = document.getElementById("id_para");
p1.toString();                          // [object HTMLParagraphElement]

var p2 = document.getElementsByClassName("para");
p2.toString();                          //[object HTMLCollection]

CEVAP
2 NİSAN 2012, PAZARTESİ


node bir DOM hiyerarşisinde herhangi türde bir nesne için genel adıdır. node olabilir yerleşik DOM öğeleri gibi document document.body, ama bir HTML etiketi belirtilen HTML gibi <input> <p> veya bir metin düğümü oluşturulan sistem için bir blok metin içinde başka bir unsur. Yani, özetle, node herhangi bir DOM nesnesi.

DOM her bir üst düğüm, çocuk düğüm ve nextSibling ve bir previousSibling bir listesi var nerede düğümleri bir hiyerarşi oluşur. Bu yapı gibi bir ağaç hiyerarşi oluşturur. document düğümü alt düğümleri (head düğüm body düğüm) liste olurdu. body düğümün çocuk düğümleri listesi (üst düzey HTML sayfası öğeleri) ve benzeri var.

Yani, bir nodeList sadece nodes-gibi bir dizi listesi.

Bir öğe düğümü belirli bir tip, doğrudan bir HTML etiketi HTML belirtilebilir ve id gibi özellikleri olan bir veya class. çocuklar, vs... yorum düğümleri, metin düğümleri, vs... farklı özelliklere sahip gibi düğümleri diğer türleri vardır. Her düğüm ne olduğunu rapor eden bir özellik .nodeType vardır. Düğümler burada (MDN diyagramı) çeşitli türleri görebilirsiniz:

enter image description here

ELEMENT_NODE nodeType özelliği 1 bir değeri olduğu düğüm belirli bir tip olduğunu görebilirsiniz.

Yani document.getElementById("test") tek bir düğüm dönebilir ve bir öğe (düğüm belirli bir türü) olması garanti. Bu yüzden sadece bir liste yerine öğesi döndürür.

document.getElementsByClassName("para") birden fazla nesne döndürür, çünkü tasarımcılar birden fazla düğüm listesi için oluşturulan veri türü çünkü nodeList dönüş için seçti. Bu yana sadece eleman (yalnızca öğeleri genellikle bir sınıf adı), teknik olarak bir nodeList bu sadece düğüm türü öğesi ve tasarımcılar yapmış olabilir bir farklı adlı toplama bir elementList, ama onlar seçti kullanın, yalnızca bir tür toplama olsun vardı unsurları içinde ya da değil.


DÜZENLEME:HTML5 HTML Öğeleri listesi HTMLCollection (herhangi bir düğüm, tek öğesi değil) tanımlar. HTML5 özellikleri veya yöntemleri bir dizi şimdi HTMLCollection bir dönüş. Bir arayüz olarak çok benzer olsa da nodeList farkı artık sadece Elemanları, düğüm herhangi bir türü içeren yapılır.

nodeList HTMLCollection a arasındaki ayrım bir kullanın ne kadar az etkisi (söyleyebileceğim kadarıyla, ama HTML5 tasarımcılar şimdi bu ayrım yapılmış.

Örneğin, element.children özelliği canlı bir HTMLCollection verir.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jonathan Flavell

    Jonathan Fla

    1 HAZİRAN 2006
  • kylelandry

    kylelandry

    9 AĞUSTOS 2007
  • Matthew Smith

    Matthew Smit

    24 Mayıs 2010