客户端javascript之脚本化文档
1.选取文档元素
1.1通过ID选取元素
var selection=document.getElementById(“selection”);
返回的值为Element对象。
1.2通过name选取元素
同ID属性不同的是name属性只对个别元素起作用,包括表单,表单元素,<iframe/>,<img>,且只对HTMl起作用,对XML不起作用
varselection=document.getElementByName(“selection”);
返回NodeList对象,类似于一个Element对象组成的数组。
1.3通过标签名选取元素
Document对象的getElementByTagName()方法可以选取指定标签名的所有HTML或者XML文档。
var divs=document.getElementByTagName(“div”);
返回一个NodeList对象。NodeList对象按照元素在文档中的顺序排序。可通过如下方法获得第一个标签元素:
var div=document.getElementByTagName(“div”)[0];
还可以通过传入“*”参数,获得文档中的所有元素。
Element对象也有与document对象相同的方法。但是Element中的方法只能返回调用该方法的元素的后代元素:
var divs=document.getElementByTagName(“div”)[0];
var span=document.getElementByTagName(“span”);
1.4通过css类选取元素
var selections=document.getElementByClassName(“n1n2”);
返回值类型为NodeList对象,参数可以多个,用空格隔开。
2.文档结构和遍历
2.1作为节点树的文档
Document对象、以及Element对象和表示文本的Text对象都为Node对象。Node对象定义了如下重要的操作属性:
parentNode:当前节点的父节点,或者为Document节点时返回null值,因为它没有父节点。
childNodes:只读的数组对象(NodeList对象),它是当前节点的子节点的实时表示。
firstChild、lastChild:当前节点的子节点,当没有子节点时,返回null值。
nextSibling、previousSibling:当前节点的兄弟节点的前一个和后一个。
nodeType:当前节点的类型。9代表Document节点,1代表Element节点,3代表Text节点,8代表Comment节点,11代表DocumentFragment节点。
nodeValue:Text节点或者Comment节点的文本内容。
nodeName:当前元素的大写名标签名。
2.2作为元素树的文档
3.属性