從來沒詳細(xì)學(xué)習(xí)過,現(xiàn)在總結(jié)一下,省得以后每次都要試好多次。。。
1,直接訪問:
A 對(duì)頁(yè)面的HTML結(jié)構(gòu)元素,常用的有table, tr, td, div, span等,可以用 window.objId;
B 對(duì)表單元素,如input=text,select等,可以用 form.objId;
C 表單是個(gè)特例,可以用
window.formNam;
window.document.forms[formIndex];
window.document.forms[formName];
2,通過method訪問:
也就是調(diào)用各種對(duì)象的method,通過已知的name,id來獲取。
A document.getElementById(objId);
如果objId在頁(yè)面中不唯一,返回第一個(gè)(ID也不唯一,實(shí)在是太不像話了!),如果objId標(biāo)識(shí)一個(gè)collection對(duì)象,返回collection的第一個(gè)元素。
B document.getElementsByName(objName/objId);
請(qǐng)注意,在Element后面有個(gè)s,也就是說,返回的是一個(gè)collection,可能必須使用循環(huán)進(jìn)行查找;當(dāng)然如果確定這個(gè)objName或者objId是唯一的話,collection[0]就可以了。
C document.getElementsByTagName(tagName);
獲得以tagName標(biāo)記的HTML元素的collection。
D collection.item(index / name / id);
與3.A幾乎相同,但不能檢索input type=image對(duì)象。
3,通過property訪問:
A object.all[index / name / id];
通過name/id檢索時(shí)結(jié)果有可能是collection;
B object.childNodes[index]
與A相似,但包含文本節(jié)點(diǎn)TextNode