用JS怎么控制添加或删除DIV?

JavaScript018

用JS怎么控制添加或删除DIV?,第1张

document.createElement()是在对象中创建一个对象,要与appendChild() 或 insertBefore()方法联合使用。\x0d\x0a其中,appendChild() 方法在节点的子节点列表末添加新的子节点。insertBefore() 方法在节点的子节点列表任意位置插入新的节点。\x0d\x0a1、添加DIV \x0d\x0afunction addDiv(w,h){ \x0d\x0a//如果原来有“divCell”这个图层,先删除这个图层\x0d\x0adeleteDiv()\x0d\x0a//创建一个div \x0d\x0avar newdiv = document.createElement("divCell") \x0d\x0a//添加到页面 \x0d\x0adocument.body.appendChild(newdiv) \x0d\x0a//通过样式指定该div的位置方式,若是想要自己设置div的位置,这句话必须有,把它注释掉你就可以知道效果拉~试试看 \x0d\x0anewdiv.style.position="absolute" \x0d\x0a//通过样式指定x坐标(随机数0~450) \x0d\x0anewdiv.style.top= Math.round(Math.random()*450) \x0d\x0a//通过样式指定y坐标(随机数0~700) \x0d\x0anewdiv.style.left= Math.round(Math.random()*700) \x0d\x0a//通过样式指定宽度 \x0d\x0anewdiv.style.width=w \x0d\x0a//通过样式指定高度 \x0d\x0anewdiv.style.height=h \x0d\x0a//通过样式指定背景颜色,,若是背景图片 例为 newdiv.style.backgroundImage="url(img/3.jpg)" \x0d\x0anewdiv.style.backgroundColor="#ffffcc" \x0d\x0a//添加div的内容 \x0d\x0a//newdiv.innerHTML=i++\x0d\x0a//设置样式透明\x0d\x0anewdiv.style.filter = "alpha(opacity=50)"\x0d\x0a//设置ID\x0d\x0anewdiv.id = "divCell" \x0d\x0a }\x0d\x0a2、删除DIV \x0d\x0a function deleteDiv()\x0d\x0a {\x0d\x0avar my = document.getElementById("divCell")\x0d\x0aif (my != null)\x0d\x0amy.parentNode.removeChild(my)\x0d\x0a }

最好给需要删除的div元素定义一个ID,以方便对其进行操作;

注意JS中是没有remove()方法的,在jquery中就可以直接使用 $("#divID").remove()移除该元素;这样非常方便、简单。

js中的话要通过获取该元素的父级元素,再调用..removeChild(要删除的元素)

测试demo:

这边修改了代码,请保存为.html文件后测试。

<html>

<head>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>删除自己的div</title>

<style>

.wrap {

width: 400px

height: 400px

background-color: aqua

}

.user-info {

width: 390px

height: 120px

border: 1px solid red

}

</style>

</head>

<body>

<div class="wrap">

<div class="del">

<div class="user-info">我是1</div>

<div class="user-info">我是2</div>

<div class="user-info">我是3</div>

</div>

</div>

<script>

var del = document.getElementsByClassName("del")[0]

var user = document.getElementsByClassName("user-info")

for (let i = 0i <user.lengthi++) {

user[i].onclick = function () {

this.parentNode.removeChild(this)

}

}

</script>

</body>

</html>