DOM文档对象模型,是W3C组织推荐的处理可拓展标记语言(HTML或者XML)的标准编程接口。
一、DOM树
文档:一个页面就是一个文档,DOM中使用document表示。
元素:页面中的所有标签都是元素,DOM中使用element表示。
节点:网页中所有的内容都是节点(标签、属性、文本、注释等),DOM中使用node表示
二、获取元素
1、根据ID获取 getElementById() console.dir()
<div id="time">2020-10-01</div>
<script>
var timer = document.getElementById('time');
console.dir(timer);
</script>
(1)因为文档页面从上往下加载,所以先得有标签,所以<script>写到标签下面。
(2)id是大小写敏感的字符串,要查找元素的唯一ID
(3)返回一个匹配到id 的DOM element对象,没有找到则返回null
(4)console.dir()打印返回的对象,更好查看里面的属性和方法
2、根据标签名获取对象集合 getElementsByTagName()
(1)返回的是获取对象的集合,以伪数组的形式存储
(2)可以采用遍历的方式获取里面的元素
(3)得到的元素对象是动态的,元素内容变化,获取的对象随之变化
(4)就算该标签只有一个元素,返回的依然是一个元素的伪数组,没有元素的话依然返回空的伪数组
(5)document.getElementsByTagName() document可以更换为其他父元素,父元素必须指定是单个元素,必须指定是哪一个元素对象
3、根据类名获取对象集合 getElementsByClassName()
4、根据选择器返回对象 querySelector()、querySelectorAll()
(1)根据选择器返回第一个对象 querySelector()
里面的选择器需要加符号,类选择器 .box,ID选择器 #box,标签选择器 box
(2)根据选择器返回全部对象集合 querySelectorAll()
5、特殊元素获取(body、html)document.body、.documentElement
(1)获取body元素 document.body
(2)获取html元素 document.documentElement