DOM:Document Object Model (文档对象模型); 访问节点
使用getElement系列方法访问指定节点 getElementById(),getElementsByName(), getElementsByTagName()
根据层次关系访问节点 parentNode:返回节点的父节点 childNodes:返回子节点集合,childNodes[i] firstChild:返回节点的第一个节点 lastChild:返回节点的最后一个节点 nextSibling:下一个节点 previousSibling:上一个节点
element属性 firstElementChild:返回节点的第一个子节点 lastElementChild:返回节点的最后一个节点 nextElementSibling:下一个节点 previousElementSibling:上一个节点
firstChild和firstElementChild
相同点:都是获取父元素的第一个节点对象不同点:firstChild:IE6,7,8第一个元素节点;非IE6,7,8返回第一个元素节点或文本节点firstElementChild:IE6,7,8不支持,非IE6,7,8获取第一个元素节点为了解决兼容性问题,一般这样写
var node=document.getElementById("oParent"); var oNext = oParent.nextElementSibling || oParent.nextSibling var oPre = oParent.previousElementSibling || oParent.previousSibling var oFirst = oParent. firstElementChild || oParent.firstChild var oLast = oParent.lastElementChild || oParent.lastChild节点信息
nodeName:节点名称nodeValue:节点值nodeType:节点类型 元素element: NodeType值 1 属性attr:NodeType值 2 文本text:NodeType值 3 注释comments :NodeType值 8 文档document:NodeType值 9 操作节点 创建节点:createElement(TagName);//创建一个标签名为TagName的新元素节点 插入节点: A.appendChild(B);//把B节点追加到A节点的末尾; insertBefore(A,B);//把A节点插入到B节点之前; 复制节点:cloneNode(deep);//复制某个指定的节点 删除节点:removeChild(node);//删除指定节点 替换节点:replaceChild(newNode,oldNode);//newNode替换oldNode节点 操作节点的属性 getAttribute(“属性名”);//获取属性值 setAttribute(“属性名”,“属性值”);//为属性设置属性值 操作节点的样式 style属性 语法:HTML 元素.style.样式属性=“值” 例如: document.getElementById("titles").style.color="#ff0000" className属性 语法:HTML 元素.className="样式名称" 例如:document.getElementById("cart").className="cartOver" 获取元素样式 1.语法:HTML 元素.style.样式属性 例如:alert(document.getElementById("cartList").display); 2,. 语法:document.defaultView.getComputedStyle(元素,null).属性 3,语法:HTML元素.currentStyle.样式属性;//兼容IE浏览器