JavaScript高级程序设计-第十章-DOM

来源:互联网 发布:淘宝客推广海报 编辑:程序博客网 时间:2024/06/06 08:41

10.1节点层次

1.文档节点是每个稳当的根节点,文档节点只有一个子节点,称之为文档元素,也是文档的最外层元素。
2.每个节点都有一个nodeType属性,可以通过比较确定类型,也可以通过用数字值进行对比。nodeName和nodeValue的值取决于节点的类型。
3.appendChild会在末尾插入一个新的节点,insertBefore(要插入的节点,作为参照的节点)能插入到参照节点之前,replaceChild(要插入的节点,要替换的节点),removeChild移除一个节点。cloneNode的参数为true时,进行深复制,也就是复制节点及其整个子节点树,参数为false时,只复制节点本身。normalize删除不包含文本的节点,并能将接连出现两个文本节点的节点合并为一个节点。
4.domain属性有一个限制,如果域名一开始是“松散的”(loose),哪儿就不能将它设置为“紧绷的”(tight)。
5.取得元素的操作可以用document的对象的几个方法来完成:getElementById()和getElementByTagName()。getElementByTagName()传入参数“*”,即可文档中所有元素。在后台,对数值索引就会调用item(),对字符串索引就会调用namedItem()。
6.要访问元素的标签名,可以使用nodeName属性,也可以使用tagName属性;这两个属性会返回相同的值。
7.for (var i=0,len=element.childNodes.length;i < len;i++){
if(element.childNodes[i].nodeType == 1){
//执行某些操作
}
}

这个例子会循环遍历特定元素的每一个子节点,然后只在子节点的nodeType等于1(表示是元素节点)的情况下,才会执行某些操作。
8. 开始与结束标签之间只要存在内容,就会创建一个文本节点。
9. 动态脚本指的是在页面加载时不存在,但将来的某一时刻通过修改DOM动态添加的脚本。
10. 访问DOM的操作在多数情况下都很直观,不过在处理 script style 元素时还是存在一些复杂性.过早的ie可能不能识别新创建的script或者style元素,就需要用try catch语句进行兼容处理。

原创粉丝点击