要改变页面的某个东西,JavaScript 就需要获得对 HTML 文档中所有元素进行访问的入口。这个入口,连同对 HTML 元素进行添加、移动、改变或移除的方法和属性,都是通过文档对象模型来获得的(DOM)
根据 DOM,HTML 文档中的每个成分都是一个节点。
DOM 是这样规定的:
整个文档是一个文档节点
每个 HTML 标签是一个元素节点
包含在 HTML 元素中的文本是文本节点
每一个 HTML 属性是一个属性节点
注释属于注释节点
一、是否可变的区别:
html属性中的值是不变的,dom属性的值是变化的。
二、适用场合不同:
核心DOM适合 *** 作节点,如创建,删除,查找等;HTML DOM适合 *** 作属性,如读取或修改属性的值。
三、两者对象不同:
核心DOM :
对象:Document,Node, ElementNode,TextNode,AttributeNode,CommentNode,NodeList
HTML DOM:
对象:image,Table,Form,Input,Select...HTML标签对象化
扩展资料
使用javascript *** 作DOM属性就是 *** 作javascript对象的属性。javascript对象的属性是不需要声明的。有多种方式可以访问属性,如下:
myImg.src = "xxxxxx" //使用“.”运算符
myImg["src"] = "xxxxxx" // 使用属性访问器
var propName = "src" myImg[propName] = "xxxxxx" //属性访问器支持变量
注:1)因为提供了属性访问器,所以可以通过下面的方式遍历一个DOM对象的所有属性:
var result = ""
for (var p in myImg){
result += "属性名:" + p + ",属性值:" + myImg[p] + "\n"
}
HTML DOM 类似将 HTML 文档视作树结构。这种结构被称为节点树比如html是head 和body的父节点,body又可以包含如a,p,h1,h2等子节点
通过 HTML DOM,树中的所有节点均可通过 JavaScript 当成对像进行访问
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)