1.DOM操作的概念
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
</body>
</html>
2.DOM基本操作
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<h1>获取节点</h1>
<h1 id="b1" class="c1">我是标题1</h1>
<p id="p1" >我是段落1</p>
<a href="">我是超链接1</a>
<p class="c1">我是段落2</p>
<hr >
<h1>添加节点</h1>
<div id="div1" style="background-color: yellow; height: 100px;">
</div>
<div id="div2" style="background-color: greenyellow; height: 100px;">
</div>
<hr >
<h1>父子节点的获取</h1>
<div id="div3">
<p id="p2">我是段落3</p>
<h2>我是标题2</h2>
<a id="a1" href="">我是超链接2</a>
</div>
<hr>
<h1>拷贝节点</h1>
<div id="div4" style="background-color: hotpink; width: 150px; height: 150px; margin-bottom: 20px;">
<div id="" style="background-color: seagreen; width: 80px; height: 80px;">
</div>
</div>
</body>
</html>
<script type="text/javascript">
b1Node = document.getElementById('b1')
console.log(b1Node, typeof(b1Node))
c1NodeArray = document.getElementsByClassName('c1')
console.log(c1NodeArray)
console.log(c1NodeArray[0], c1NodeArray[1])
console.log('=======================')
for(x=0;x<c1NodeArray.length;x++){
console.log(c1NodeArray[x])
}
pNodeArray = document.getElementsByTagName('p')
console.log(pNodeArray)
for(x=0;x<pNodeArray.length;x++){
console.log(pNodeArray[x])
}
p2PNode = document.getElementById('p2').parentElement
console.log('父节点:',p2PNode)
div3Node = document.getElementById('div3')
allChild = div3Node.children
console.log(allChild)
console.log(div3Node.firstElementChild)
console.log(div3Node.lastElementChild)
inputNode = document.createElement('input')
document.getElementById('div2').appendChild(inputNode)
btnNode = document.createElement('button')
bodyNode = document.getElementsByTagName('body')[0]
div1Node = document.getElementById('div1')
bodyNode.insertBefore(btnNode, div1Node)
divNode = document.createElement('div')
bodyNode.insertBefore(divNode, bodyNode.firstElementChild)
document.getElementById('p2').remove()
document.getElementById('div3').removeChild(document.getElementById('a1'))
div4Node = document.getElementById('div4')
newDiv4Node1 = div4Node.cloneNode()
newDiv4Node2 = div4Node.cloneNode(true)
bodyNode.appendChild(newDiv4Node1)
bodyNode.appendChild(newDiv4Node2)
</script>
3.节点属性
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<p id="p1" class="c1">我是段落1</p>
<img src="img/bear.png" >
<input id="username" type="" name="" value="" placeholder="" />
<br>
<button type="button" onclick="getUserName()">获取用户名</button>
</body>
</html>
<script type="text/javascript">
pNode = document.getElementById('p1')
console.log(pNode.innerText, pNode.innerHTML)
pNode.innerHTML = "你好<a href='#'>js</a>"
console.log(pNode.className)
pNode.className = 'c2'
pNode.className += ' c3'
imgNode = document.getElementsByTagName('img')[0]
console.log(imgNode.src)
imgNode.src = 'img/hat.png'
imgNode.title = '路飞'
inputNode = document.getElementsByTagName('input')[0]
inputNode.value = '张三'
inputNode.placeholder = '请输入用户名'
function getUserName(){
var input = document.getElementById('username')
console.log(input.value)
}
pNode.style = 'color:red;font-size:25px;background-color:yellow;'
pNode.style.color = 'green'
pNode.style.backgroundColor = 'pink'
</script>
4.添加标签练习
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<input type="" name="" id="content" value="" />
<br>
<br>
<button onclick="addElement()">确定</button>
</body>
<script type="text/javascript">
inputNode = document.getElementById('content')
bodyNode = document.getElementsByTagName('body')[0]
function addElement(){
var content = inputNode.value
var pNode = document.createElement('p')
pNode.innerText = content
bodyNode.appendChild(pNode)
}
</script>
</html>