1、getElementById()
getElementById()可以訪問DOCUMENT中的某一特定元素,顧名思義,就是通過ID來取得元素,所以只能訪問設置了ID的元素。
比如說有一個DIV的ID為docid:
程序代碼
<div id="docid"></div>
那么就可以用getElementById("docid")來獲得這個元素。
2、getElementsByName()
這個是通過NAME來獲得元素,但不知大家注意沒有,這個是GET ELEMENTS,復數ELEMENTS代表獲得的不是一個元素,為什么呢?
因為DOCUMENT中每一個元素的ID是唯一的,但NAME卻可以重復。打個比喻就像人的身份證號是唯一的(理論上,雖然現實中有重復),但名字重復的卻很多。如果一個文檔
中有兩個以上的標簽NAME相同,那么getElementsByName()就可以取得這些元素組成一個數組。
比如有兩個DIV:
程序代碼
<div name="docname" id="docid1"></div>
<div name="docname" id="docid2"></div>
那么可以用getElementsByName("docname")獲得這兩個DIV,用getElementsByName("docname")[0]訪問第一個DIV,用getElementsByName("docname")[1]訪問第二個DIV。
3、getElementsByTagName()
這個呢就是通過TAGNAME(標簽名稱)來獲得元素,一個DOCUMENT中當然會有相同的標簽,所以這個方法也是取得一個數組。
下面這個例子有兩個DIV,可以用getElementsByTagName("div")來訪問它們,用getElementsByTagName("div")[0]訪問第一個DIV,用
getElementsByTagName("div")[1]訪問第二個DIV。
總結一下標準DOM,訪問某一特定元素盡量用標準的getElementById(),訪問標簽用標準的getElementByTagName(),但IE不支持getElementsByName(),所以就要避免使用
getElementsByName(),但getElementsByName()和不符合標準的document.all[]也不是全無是處,它們有自己的方便之處,用不用那就看網站的用戶使用什么瀏覽器,由你自己決定了。
新聞熱點
疑難解答