《JavaScript视频17》DOM增删改

本文介绍了如何使用JavaScript的createElement(), createTextNode()等方法进行DOM元素的创建、文本节点的添加,并展示了appendChild(), insertBefore(), replaceChild(), removeChild()以及innerHTML的运用实例,以及结合使用它们进行高效DOM操作的方法。

DOM增删改

document.creatElement()

  • 可以创建一个元素节点对象
  • 需要一个标签名作为参数,将会根据该标签名创建元素节点对象
  • 并将创建好的对象作为返回值返回

document.creatTextNode()

  • 可以创建一个文本节点对象
  • 需要一个文本内容作为参数,将会根据该内容创建文本节点
  • 并将新的节点返回

appendChild()

  • 向一个父节点中添加一个新的子节点
  • 用法:父节点.appendChild(子节点);

insertBefore()

  • 在指定的子节点前面插入新的子节点
  • 语法:父节点.insertBefore(新节点,旧节点);

replaceChild()

  • 可以使用指定的子节点替换已有的旧节点
  • 语法:父节点.replaceChild(新节点,旧节点);

removeChild()

  • 删除一个子节点
  • 语法:父节点.removeChild(子节点);

但是这种语法比较麻烦,我们常用下面的语法:

子节点.parentNode.removeChild(子节点);

使用innerHTML也可以完成DOM增删改的操作

city.innerHTML += "<li>广州<li>";

但是这种方式会造成负载增加,我们通常会两种结合使用

  • 我们先增加一个标签
  • 通过innerHTML来为这个新的标签增加内容
  • 然后将这个新的标签添加到原来的界面中
<script type="text/javascript">
	window.onload = function(){
		function myClickFun (name, fun){
			var btn = document.getElementById(name);
			btn.onclick = fun;
		};
		
		myClickFun("buttons",function(){
			var li = document.createElement("li");
			li.innerHTML = "永城";
			var citys = document.getElementById("list");
			citys.appendChild(li);
		})
		
	};
</script>

方法二:

myClickFun("buttons",function(){
	var li = document.createElement("li");
	var text = document.createTextNode("永城");
	li.appendChild(text);
	var citys = document.getElementById("list");
	citys.appendChild(li);
})

在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值