- 1、本文档共19页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DOM基础汇编
DOM 基础
学习要点:
1.DOM 介绍
2.查找元素
3.DOM 节点
4.节点操作
DOM(Document Object Model)即文档对象模型,针对 HTML 和 XML 文档的 API(应
用程序接口)。DOM 描绘了一个层次化的节点树,运行开发人员添加、移除和修改页面的 某一部分。DOM 脱胎于 Netscape 及微软公司创始的 DHTML(动态 HTML),但现在它已 经成为表现和操作页面标记的真正跨平台、语言中立的方式。
一.DOM 介绍
DOM 中的三个字母,D(文档)可以理解为整个 Web 加载的网页文档;O(对象)可 以理解为类似 window 对象之类的东西,可以调用属性和方法,这里我们说的是 document 对象;M(模型)可以理解为网页文档的树型结构。
DOM 有三个等级,分别是 DOM1、DOM2、DOM3,并且 DOM1 在 1998 年 10 月成为 W3C 标准。DOM1 所支持的浏览器包括 IE6+、Firefox、Safari、Chrome 和 Opera1.7+。
PS:IE 中的所有 DOM 对象都是以 COM 对象的形式实现的,这意味着 IE 中的 DOM 可能会和其他浏览器有一定的差异。
1.节点
加载 HTML 页面时,Web 浏览器生成一个树型结构,用来表示页面内部结构。DOM 将 这种树型结构理解为由节点组成。
节点树
从上图的树型结构,我们理解几个概念,html 标签没有父辈,没有兄弟,所以 html 标 签为根标签。head 标签是 html 子标签,meta 和 title 标签之间是兄弟关系。如果把每个标签
当作一个节点的话,那么这些节点组合成了一棵节点树。 PS:后面我们经常把标签称作为元素,是一个意思。
2.节点种类:元素节点、文本节点、属性节点。
div title=属性节点测试 Div/div
二.查找元素
W3C 提供了比较方便简单的定位节点的方法和属性,以便我们快速的对节点进行操作。 分别为:getElementById()、getElementsByTagName()、getElementsByName()、getAttribute()、 setAttribute()和 removeAttribute()。
元素节点方法 方法 说明 getElementById() 获取特定 ID 元素的节点 getElementsByTagName() 获取相同元素的节点列表 getElementsByName() 获取相同名称的节点列表 getAttribute() 获取特定元素节点属性的值 setAttribute() 设置特定元素节点属性的值 removeAttribute() 移除特定元素节点属性
1.getElementById()方法
getElementById()方法,接受一个参数:获取元素的 ID。如果找到相应的元素则返回该 元素的 HTMLDivElement 对象,如果不存在,则返回 null。
document.getElementById(box); //获取 id 为 box 的元素节点
PS:上面的例子,默认情况返回 null,这无关是否存在 id=box的标签,而是执行顺序 问题。解决方法,1.把 script 调用标签移到 html 末尾即可;2.使用 onload 事件来处理 JS,等 待 html 加载完毕再加载 onload 事件里的 JS。
window.onload = function () { //预加载 html 后执行
document.getElementById(box);
};
PS:id 表示一个元素节点的唯一性,不能同时给两个或以上的元素节点创建同一个命 名的 id。某些低版本的浏览器会无法识别 getElementById()方法,比如 IE5.0-,这时需要做 一些判断,可以结合上章的浏览器检测来操作。
if (document.getElementById) { //判断是否支持 getElementById alert(当前浏览器支持 getElementById);
}
当我们通过 getElementById()获取到特定元素节点时,这个节点对象就被我们获取到了, 而通过这个节点对象,我们可以访问它的一系列属性。
元素节点属性
属性 说明 tagName 获取元素节点的标签名 innerHTML 获取元素节点里的内容,非 W3C DOM 规范 document.getElementById(box).tagName; //DIV document.getElement
文档评论(0)