javaScripe的DOM模型
1.DOM模型
DOM 全称是 Document Object Model 文档对象模型
大白话,就是把文档中的标签,属性,文本,转换成为对象来管理。

Document 对象的理解:
第一点:Document 它管理了所有的 HTML 文档内容。
第二点:document 它是一种树结构的文档。有层级关系。
第三点:它让我们把所有的标签 都 对象化
第四点:我们可以通过 document 访问所有的标签对象。
2 . Document 对象中的方法
document.getElementById(elementId) : 通过标签的 id 属性查找标签 dom 对象 (优先使用)
document.getElementsByName(elementName) : 通过标签的 name 属性查找标签 dom 对象
document.getElementsByTagName(tagname) : 通过标签名查找标签 dom 对象
document.createElement( tagName) : 方法,通过给定的标签名,创建一个标签对象
3. 节点的常用属性和方法 (节点就是dom对象)
方法:
通过具体的元素节点调用
getElementsByTagName()
方法,获取当前节点的指定标签名孩子节点
appendChild( oChildNode )
方法,可以添加一个子节点,oChildNode 是要添加的孩子节点
属性:
childNodes
属性,获取当前节点的所有子节点
firstChild
属性,获取当前节点的第一个子节点
lastChild
属性,获取当前节点的最后一个子节点
parentNode
属性,获取当前节点的父节点
nextSibling
属性,获取当前节点的下一个节点
previousSibling
属性,获取当前节点的上一个节点
className
用于获取或设置标签的 class 属性值
innerHTML
属性,表示获取/设置起始标签和结束标签中的内容
innerText
属性,表示获取/设置起始标签和结束标签中的文本
4.代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>用户注册提示</title>
<script type="text/javascript">
function onclickFun() {
//1.获取对象
var usernameObj = document.getElementById("username");
//2.获取value
var value = usernameObj.value;
//正则(value只能用字母 , 数字及下划线组成 , 且5-12位
var patt = /^\w{5,12}$/;
var spanId = document.getElementById("spanId");
if (patt.test(value)) {
spanId.innerHTML = "√";
} else {
spanId.innerHTML = "×";
}
}
</script>
</head>
<body>
用户名 : <input type="text" id="username" value="wzg"/>
<span id="spanId" style="color: red"></span>
<button onclick="onclickFun()">提交</button>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>复选框</title>
<script type="text/javascript">
function checkAll() {
//getElementsByName : 返回带有指定名称的对象集合。
var hobbys = document.getElementsByName("hobby");
for (var i = 0; i < hobbys.length; i++) {
hobbys[i].checked = true;
}
}
function checkNo() {
//getElementsByName : 返回带有指定名称的对象集合。
var hobbys = document.getElementsByName("hobby");
for (var i = 0; i < hobbys.length; i++) {
hobbys[i].checked = false;
}
}
function checkReverse() {
//getElementsByName : 返回带有指定名称的对象集合。
var hobbys = document.getElementsByName("hobby");
for (var i = 0; i < hobbys.length; i++) {
hobbys[i].checked = !hobbys[i].checked;
}
}
</script>
</head>
<body>
兴趣爱好 :
<input type="checkbox" name="hobby" value="C++">C++
<input type="checkbox" name="hobby" value="java">java
<input type="checkbox" name="hobby" value="js">js
<br/>
<button onclick="checkAll()">全选</button>
<button onclick="checkNo()">全不选</button>
<button onclick="checkReverse()">反选</button>
</body>
</html>
浙公网安备 33010602011771号