常見的獲取元素的方法有3種,分別是透過元素ID、透過標籤名字和透過類別名字來取得。
getElementById
DOM提供了一個名為getElementById的方法,這個方法將傳回一個與之對應id屬性的節點物件。使用的時候請注意區分大小寫。
它是document物件特有的函數,只能透過其來呼叫該方法。其使用的方法如下:
此方法相容於主流瀏覽器,甚至包括IE6 ,可以大膽使用。
getElementsByTagName
此方法傳回一個物件陣列(精確的說是HTMLCollection集合,它不是真正意義上的陣列),每個物件分別對應著文件裡有著給定標籤的一個元素。類似於getElementById,同樣,該方法只提供一個參數,它的參數是指定標籤的名字,範例程式碼如下:
要注意的是,該方法除了能被document物件呼叫之外,還可以被普通的元素呼叫。例如下:
同樣,此方法相容於主流瀏覽器,甚至包括IE6 ,可以大膽使用。
getElementsByClassName
除了透過指定標籤取得元素外,DOM還提供了getElementsByClassName方法來取得指定class名稱的元素。不過由於方法比較新,較老的瀏覽器還不支持,例如IE6。不過我們可以用hack方式來彌補老瀏覽器缺陷。此方法呼叫的方式如下所示:
和getElementsByTagname一樣, 此方法除了能被document物件呼叫之外,還可以被普通的元素呼叫。
對於比較老的瀏覽器,例如IE6、7我們可以透過下面的hack方式來實現:
拓展
如果你不只滿足上面那些元素選擇的方法,想和JQuery一樣,能透過選擇器來取得元素,實作的方法和上面的getElementsByClassName差不多,如果有興趣自己可以實作一套選擇器。不過我覺得有上面的三個方法再結合事件冒泡,已經夠用了,畢竟這三種性能上算是優秀的。
以上就是本文的全部內容了,希望對大家能夠有所幫助。