javascript创建元素和删除元素实例小结


Posted in Javascript onJune 19, 2019

本文实例讲述了javascript创建元素和删除元素。分享给大家供大家参考,具体如下:

1、创建元素

动态创建新的DOM元素,是js操作网页对象模型的重要手段之一。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>3water.com 创建新元素</title>
  <script type="text/javascript">
    //创建新元素
    function createNewElements(){
      //使用innerHTML创建新元素
      var p1 = document.getElementById("p1");
      //设置innerHTML内容
      p1.innerHTML = "<span>我的dom文本1</span>";
      //使用createElement来创建新元素
      var span = document.createElement("span");
      //为新元素内容创建一个文本节点
      span.appendChild(document.createTextNode("我的dom文本2"));
      var p2 = document.getElementById("p2");
      //挂接
      p2.appendChild(span);
    }
  </script>
</head>
<body style="text-align:center">
  <p>
    <input type="button" value="创建新元素" onclick="createNewElements()"/>
  </p>
  <!--定义为新元素挂接的容器元素-->
  <p id="p1"></p>
  <p id="p2"></p>
</body>
</html>

运行效果:

javascript创建元素和删除元素实例小结

创建新元素通常有2种方法:

1、直接修改父元素的innerHTML元素;

2、使用createElement()来创建,再用appendChild()进行DOM元素的挂接。

第一种方法用起来较为简单,也易于理解,但需要修改整个父元素所包含的HTML内容,若父元素原先就包含了一些HTML内容,再进行DOM挂接的话,执行效率会较低;第二种方法相对较为灵活,效率也较高,只是用起来复杂一些。

2、删除元素

删除元素指的是把这个DOM元素彻底删除,而不是隐藏。通常,使用removeChild()进行删除是最常见的方法。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>3water.com 删除元素</title>
  <script type="text/javascript">
    //删除元素
    function deleteElement(){
      //获取准备删除的DOM
      var del = document.getElementById("del");
      //调用删除函数彻底删除
      del.parentNode.removeChild(del);
    }
  </script>
</head>
<body style="text-align:center">
  <p>
    <input type="button" value="删除元素" onclick="deleteElement()"/>
  </p>
  <!--定义被删除的元素-->
  <span id="del">即将被删除的DOM</span>
</body>
</html>

解析:

由于removeChild()是对子元素的操作,而不是自身的删除。所以,需要先获取待删除元素的父元素,然后再调用该函数。本例中,是先使用parentNode属性获得待删除元素的父元素,再删除目标元素。

3、删除所有的子元素

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>删除所有的子元素</title>
  <script type="text/javascript">
    //删除元素的函数
    function deleteChilds(){
      //获取父DOM
      var ul = document.getElementsByTagName('ul')[0];
      //判断是否包含子元素
      if (ul.hasChildNodes()) {
        var len = ul.childNodes.length;     //子元素的个数
        for (var i = 0; i < len; i++) {     //遍历
          ul.removeChild(ul.childNodes[0]);//从第一个元素开始删除
        }
      }
    }
  </script>
</head>
<body style="text-align:center">
  <ul>
    <li>item1</li>
    <li>item2</li>
    <li>item3</li>
    <li>item4</li>
  </ul>
  </br>
  <input type="button" value="删除所有的子元素" onclick="deleteChilds()" />
</body>
</html>

解析:删除子元素,可通过js提供的removeChild()来实现。此外,需要意识到的另一点是,在遍历删除节点的过程中,每删除一个子元素,子元素的个数就会少一个,因此,示例代码始终删除的是第一个子元素,直到没有任何子元素为止。

注:

document.getElementsByTagName(“ul”) 返回的是一个数组,后面这个0是表示这个数组的第一个元素,而本网页中ul标签就一个,因此指的就是这个ul标签了。

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码运行效果。

更多关于JavaScript相关内容可查看本站专题:《JavaScript操作DOM技巧总结》、《JavaScript页面元素操作技巧总结》、《JavaScript事件相关操作与技巧大全》、《JavaScript查找算法技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript错误与调试技巧总结》

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
javascript 清空form表单中某种元素的值
Dec 26 Javascript
jQuery 操作下拉列表框实现代码
Feb 22 Javascript
jquery遍历select元素(实例讲解)
Dec 31 Javascript
JavaScript 实现打印,打印预览,打印设置
Dec 30 Javascript
详解JavaScript中的4种类型识别方法
Sep 14 Javascript
javascript实现密码验证
Nov 10 Javascript
js自制图片放大镜功能
Jan 24 Javascript
javascript数组拍平方法总结
Jan 20 Javascript
vuex的使用及持久化state的方式详解
Jan 23 Javascript
微信小程序仿微信运动步数排行(交互)
Jul 13 Javascript
Bootstrap Fileinput 4.4.7文件上传实例详解
Jul 25 Javascript
js实现烟花特效
Mar 02 Javascript
Vue 2.0 侦听器 watch属性代码详解
Jun 19 #Javascript
js获取对象,数组所有属性键值(key)和对应值(value)的方法示例
Jun 19 #Javascript
js简单遍历获取对象中的属性值的方法示例
Jun 19 #Javascript
ionic4+angular7+cordova上传图片功能的实例代码
Jun 19 #Javascript
vue实现后台管理权限系统及顶栏三级菜单显示功能
Jun 19 #Javascript
JavaScript箭头函数中的this详解
Jun 19 #Javascript
基于Node.js的大文件分片上传示例
Jun 19 #Javascript
You might like
融入意大利的咖啡文化
2021/03/03 咖啡文化
php 二维数组快速排序算法的实现代码
2017/10/17 PHP
身份证号码前六位所代表的省,市,区, 以及地区编码下载
2007/04/12 Javascript
支持ie与FireFox的剪切板操作代码
2009/09/28 Javascript
一样的table?不一样的table(可编辑状态table)
2012/09/19 Javascript
javascript一元操作符(递增、递减)使用示例
2013/08/07 Javascript
JavaScript模块随意拖动示例代码
2014/05/27 Javascript
node.js入门教程
2014/06/01 Javascript
javascript作用域问题实例分析
2015/07/13 Javascript
PassWord输入框代码分享
2016/06/07 Javascript
浅谈js中StringBuffer类的实现方法及使用
2016/09/02 Javascript
JS闭包与延迟求值用法示例
2016/12/22 Javascript
jquery easyui dataGrid动态改变排序字段名的方法
2017/03/02 Javascript
video.js 一个页面同时播放多个视频的实例代码
2018/11/27 Javascript
vue倒计时刷新页面不会从头开始的解决方法
2020/03/03 Javascript
Vue使用预渲染代替SSR的方法
2020/07/02 Javascript
[04:10]2016国际邀请赛中国区预选赛第二日TOP10精彩集锦
2016/06/28 DOTA
Python 分析Nginx访问日志并保存到MySQL数据库实例
2014/03/13 Python
详解windows python3.7安装numpy问题的解决方法
2018/08/13 Python
python实现简单多人聊天室
2018/12/11 Python
django框架模板语言使用方法详解
2019/07/18 Python
Django 项目重命名的实现步骤解析
2019/08/14 Python
tensorflow查看ckpt各节点名称实例
2020/01/21 Python
Python3使用xlrd、xlwt处理Excel方法数据
2020/02/28 Python
HTML5 文件域+FileReader 分段读取文件并上传到服务器
2017/10/23 HTML / CSS
英国工具中心:UK Tool Centre
2017/07/10 全球购物
乌克兰时尚鞋子和衣服购物网站:Born2be
2018/05/24 全球购物
MediaMarkt比利时:欧洲最大电器连锁店
2020/12/21 全球购物
Optimalprint加拿大:在线打印服务
2020/04/03 全球购物
艺术系应届生的自我评价
2013/10/19 职场文书
酒店管理自荐信
2013/10/23 职场文书
妇联领导班子剖析材料
2014/08/21 职场文书
企业务虚会发言材料
2014/10/20 职场文书
给老婆的道歉信
2015/01/20 职场文书
幼儿园六一儿童节演讲稿
2015/03/19 职场文书
春季运动会加油词
2015/07/18 职场文书