2012-04-07 19 views
0

Einige DOM-Auswahlmethoden wie getElementsByClassName() sind für HTMLDocument und HTMLElement üblich.Gemeinsame Schnittstelle für HTMLElement und HTMLDocument?

Gibt es eine gemeinsame Schnittstelle zum Erben von allgemeinen Auswahlmethoden? (Als Beispiel bietet die Knotenschnittstelle einige gebräuchliche Methoden).

document.getElementsByClassName("test"); 

element.getElementsByClassName("test"); 
+0

element.getElementByClassName ("test"); hat einen Tippfehler. – undefined

+0

korrigiert. thnks –

Antwort

4

erben Beide durch die Prototyp-Kette von Node, aber es scheint, dass diese speziellen Methoden nicht in einer gemeinsamen Schnittstelle definiert sind; sie erscheinen unabhängig in jedem von Element und Document.

Object --> Node --> Element --> HTMLElement 
      \----> Document --> HTMLDocument 
+0

Aber Auswahlmethoden sind nicht auf Node-Objekt definiert und diese Methoden werden nicht von Node geerbt. –

+0

https://developer.mozilla.org/de/DOM/Node hat keine getEle ... -Methoden. –

+1

Oh, du hast recht; Ich habe nicht sorgfältig genug gelesen. Das ist die Vererbungshierarchie, aber es scheint, dass diese Selektoren unabhängig in "Element" und "Dokument" erscheinen. Eine Implementierung kann die zugrunde liegende Logik zwischen den beiden teilen, aber es scheint mir nicht, dass es eine Schnittstelle gibt, die diesen Satz von Methoden definiert. – dfreeman

0

Ich denke, das sind die gängigen Methoden sind, wenn es um Auswahl kommt:

getElementsByClassName 
getElementsByTagName 
getElementsByTagNameNS 
querySelector 
querySelectorAll 

Andere Methoden wie getElementById sind spezifisch nur auf document

Verwandte Themen