什么是DOM?
DOM 是 Document Object Model(文档对象模型)
是 W3C(万维网联盟)的标准
DOM有什么作用?
它允许程序和脚本动态地访问和更新文档的内容、结构和样式
DOM 节点
根据 W3C 的 HTML DOM 标准,HTML 文档中的所有内容都是节点:
- 整个文档是一个文档节点
- 每个 HTML 元素(元素指标签对及标签对之间包含的内容)是元素节点
- HTML 元素内的文本是文本节点
- 每个 HTML 属性是属性节点
- 注释是注释节点
节点树:HTML DOM 将 HTML 文档视作树结构(除了根节点,其余节点都有父节点
我们可以通过JavaScript访问节点树的各个节点,并通过HTML DOM 方法获取属性
访问HTML元素的方法:
- getElementById() 方法
<p id="myid">text</p>
let p = getElementById("myid");
- getElementsByTagName() 方法
<p>text</p>
let p = getElementsByTagName("p");
- getElementsByClassName() 方法
<p class = "myname">text</p>
let p = getElementsByTagName("myname");
innerHTML 属性(用于获取或替换 HTML 元素的内容)
<p class = "myname">text</p>
document.getElementById("myname").innerHTML; //输出结果为 text
<p id="myid">text</p>
document.getElementById("myid").innerHTML="new text"; //输出结果为 new text
DOM事件
- 鼠标事件(包括点击,鼠标移入,移出等)
onclick
onclick只是浏览器提供 js 的一个dom接口,让js可以操作dom,一般我们会为按钮加onclick
<button onclick="functionName()">点击</button> //点击按钮触发JS 函数
onmousedown、onmouseup 以及 onclick 事件(完整的鼠标点击过程)
当某个鼠标按钮被点击时,触发 onmousedown 事件,然后,当鼠标按钮被松开时,会触发 onmouseup 事件,最后,当鼠标点击完成时,触发 onclick 事件