一、认识DOM
- DOM其实就是对HTML标签进行操作
- 节点:任意一个标签都可以是一个节点
- 对页面删除一个节点 增加一个节点
- 删除一个节点的类名
二、获取非常规DOM
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
div{
width: 200px;
height: 200px;
background-color: orange;
}
p{
width: 100px;
height: 100px;
background-color: yellow;
}
</style>
</head>
<body>
<div>
<p>我是p标签</p>
</div>
<script>
var htmlDiv = document.documentElement;
console.log(htmlDiv);
var htmlHead = document.head;
console.log(htmlHead);
var htmlBody = document.body;
console.log(htmlBody);
</script>
</body>
</html>
三、获取常规标签
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div class="box" id="box1">我是div标签</div>
<div class="box">我是div标签</div>
<div class="box">我是div标签</div>
<div>我是div标签</div>
<script>
let oBox = document.getElementsByClassName('box');
console.log(oBox);
let oDiv = document.getElementsByTagName('div');
console.log(oDiv);
let oBox1 = document.getElementById('box1');
console.log(oBox1);
console.log('----------------------');
let oBox11 = document.querySelector('div');
console.log(oBox11);
let oBox111 = document.querySelectorAll('div')[0];
console.log(oBox111);
let oDivs = document.querySelectorAll('div');
console.log(oDivs);
let oBoxs = document.querySelectorAll('.box');
console.log(oBoxs);
</script>
</body>
</html>
四、设置元素属性
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" conte
nt="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
div{
width: 200px;
height: 200px;
background-color: red;
text-align: center;
display: flex;
justify-content: center;
align-items: center;
font-size: 10px;
color: white;
}
.xx{
background-color: skyblue;
}
</style>
</head>
<body>
<div>
<p>我是P标签</p>
<p>我是P标签</p>
<p>我是P标签</p>
</div>
<script>
let oDiv = document.querySelector('div');
let oP = document.querySelectorAll('p');
console.log(oDiv);
console.log(oP);
oDiv.innerText = '<div class=xx>我是div标签</div>';
</script>
</body>
</html>
五、标签属性的设置与移出
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div class="box" a="100" b="200">羽生结弦</div>
<script>
let oDiv = document.getElementsByTagName('div')[0];
console.log(oDiv);
console.log(oDiv.getAttribute('class'));
console.log(oDiv.getAttribute('a'));
console.log(oDiv.getAttribute('b'));
oDiv.setAttribute('a' , '柚子');
oDiv.setAttribute('b' , '噗噗');
oDiv.setAttribute('c' , '哈牛');
console.log(oDiv.getAttribute('a'));
console.log(oDiv.getAttribute('b'));
oDiv.innerHTML = '噗噗';
oDiv.removeAttribute('a');
oDiv.removeAttribute('b');
</script>
</body>
</html>
六、自定义属性
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div class="box" data-aa="yusheng"></div>
<script>
let oDiv = document.querySelector('.box');
console.log(oDiv);
console.log(oDiv.dataset.aa);
console.log(oDiv.dataset.bb = 'youzi');
console.log(oDiv.dataset.cc = 'youzi');
console.log(oDiv.dataset.dd = 'youzi');
delete oDiv.dataset.dd;
delete oDiv.dataset.cc;
</script>
</body>
</html>