DOM简介:
DOM(Document Object Modal),即文档对象模型,其最大的作用是将数据加入到这个模型中,以便被浏览器有效的识别和处理。 DOM对象是用来操作html和xml的一类对象的集合;也有人称DOM是对HTML以及XML的标准编程接口。
每个载入浏览器的HTML文档都会成为DOM对象。通过DOM对象,我们就可以用javascript访问html页面的所有元素了。
对象的HTML DOM树:
在DOM中,每个元素都可以看作为一个节点,下面这个是DOM树(下图来自于w3school):
其中,文档,即document对象,
根元素:它是document对象的一个元素,在html中,指的是最外层的html标签所在的元素;
子元素:根元素的孩子节点;
文本:即最内层的元素的真实的值。
访问DOM对象:
在javascript中,使用document对象来访问DOM对象。document是window的一个对象。所以,
window.document 等价于 document。
可以通过document对象进行元素的查找,增加,修改,删除...等操作。
列举几个document最常用的方法:
1) document.getElementById():通过id获取DOM元素。
2) document.getElementsByTagName():对于有标签的元素来说,可以通过标签获取DOM元素;
3) document.getElementsByClassName(name):通过类名来获取DOM元素;
4) document.createElement(element):创建一个DOM元素;
5) document.removeChild(element):删除一个DOM元素。
程序示例:
添加星期,让列表达到7天(一周的天数):
代码:
dom_teset.js:
function addWeek(){
//获取元素
var weekNode = document.getElementById("week")
console.log(weekNode);
for (var i = 4; i<=7;i++) {
//创建元素
var li = document.createElement("li");
if (i==7) {
li.innerHTML = "星期日";
}else {
li.innerHTML = "星期" + i;
}
//添加元素
weekNode.appendChild(li);
}
}
dom_test.html:
<!DOCTYPE html>
<html>
<body>
<script src="./dom_test.js"></script>
<h1>DOM对象测试:</h1>
<button type="button" onclick='addWeek()'>添加元素</button>
<div>
<ul id="week">
<li>星期1</li>
<li>星期2</li>
<li>星期3</li>
</ul>
</div>
</body>
</html>
运行结果:
在浏览器中,点击“添加元素”,运行结果如下:
可见,通过xxx.innerHTML = "value"; 可以进行元素值的设置。