修改前代碼
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<button id='btn'>創(chuàng)建元素</button>
<script type="text/javascript">
var btn = document.getElementById('btn');
//注冊(cè)點(diǎn)擊事件
btn.onclick = function(){
//創(chuàng)建一個(gè)元素
var h1 = document.createElement('h1');
h1.innerHTML = "這是新增h1標(biāo)簽";
console.log( h1 );
//使用appendChild的方式
//document.body.appendChild( h1 );
//使用insertBefore的方式
//是在父元素中,先找一個(gè)節(jié)點(diǎn),然后插入到它之前
document.body.insertBefore(h1,btn); //新插入的節(jié)點(diǎn)是h1,作為第一個(gè)參數(shù)
}
</script>
</body>
</html>
修改后代碼
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<p id="box">
<button id='btn'>創(chuàng)建元素</button>
</p>
<script type="text/javascript">
var btn = document.getElementById('btn');
//注冊(cè)點(diǎn)擊事件
btn.onclick = function(){
//創(chuàng)建一個(gè)元素
var h1 = document.createElement('h1');
var box = document.createElement('box');
h1.innerHTML = "這是新增h1標(biāo)簽";
console.log( h1 );
//使用appendChild的方式
//document.body.appendChild( h1 );
//使用insertBefore的方式
//是在父元素中,先找一個(gè)節(jié)點(diǎn),然后插入到它之前
document.box.insertBefore(h1,btn); //新插入的節(jié)點(diǎn)是h1,作為第一個(gè)參數(shù)
}
</script>
</body>
</html>
修改后就無(wú)法添加元素了。問(wèn)題出在什么地方。之前的添加以body為父元素而且沒(méi)過(guò)去就直接使用了。我有給嵌套了一個(gè)p而且提前獲取元素了。但是還是不能插入新元素
溫故而知新,可以為師矣。 博客:www.ouyangke.com
1、createElement只能創(chuàng)建標(biāo)簽,box不算是標(biāo)簽吧?要把var box = document.createElement('box');換成var box = document.createElement('p');
2、這個(gè)標(biāo)簽只是存在Body里面,你不能直接通過(guò)document.box獲取,
你之前寫的是var box=document.createElement('box');
document.box那不就相當(dāng)于document.document.createElement('box')嗎?
先添加個(gè)類名獲取吧