2012-04-07 42 views
0

某些DOM選擇方法(如getElementsByClassName())對於HTMLDocument和HTMLElement是通用的。HTMLElement和HTMLDocument的通用接口?

有繼承常用選擇方法的常用接口嗎? (作爲一個例子,Node接口提供了一些常用的方法)。

document.getElementsByClassName("test"); 

element.getElementsByClassName("test"); 
+0

element.getElementByClassName( 「測試」);有一個錯字。 – undefined 2012-04-07 19:19:05

+0

已更正。 think – 2012-04-07 19:21:46

回答

4

兩種繼承通過從Node原型鏈,但現在看來,這些特定的方法並不在一個共同的接口定義;它們分別出現在ElementDocument的每一箇中。

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

但是選擇方法沒有在Node對象上定義,並且這些方法不是從Node繼承的。 – 2012-04-07 19:04:49

+0

https://developer.mozilla.org/en/DOM/Node沒有任何getEle ...方法。 – 2012-04-07 19:06:00

+1

哦,你是對的;我沒有仔細閱讀。這是繼承層次結構,但看起來這些選擇器獨立出現在「元素」和「文檔」中。一個實現可以共享這兩者之間的基礎邏輯,但是在我看來並不存在定義該方法集合的接口。 – dfreeman 2012-04-07 19:08:32

0

我覺得這些都是常見的方法,當談到選擇:

getElementsByClassName 
getElementsByTagName 
getElementsByTagNameNS 
querySelector 
querySelectorAll 

getElementById其他方法是僅針對document