JS动态创建元素的两种方法

 更新时间:2016年04月20日 14:02:40   作者:鬼脸  
这篇文章主要为大家详细介绍了JS动态创建元素的两种方法,字符串拼接形式,或是使用Document、Element对象自带的一些函数 ,需要的朋友可以参考下

本文为大家分享了js创建元素的两种方法供大家参考,具体内容如下

1)将需要创建的元素,以字符串的形式拼接;找到父级元素,直接对父级元素的innnerHTML进行赋值。

2)使用Document、Element对象自带的一些函数,来实现动态创建元素(创建元素 => 找到父级元素 => 在指定位置插入元素)

一、字符串拼接形式

    为了更好的理解,设定一个应用场景。

    随机生成一组数字,将这组数据渲染为条形图的形式,放在div[id="container"]中,如下图

      

 <div id="container">
 </div>
 <script>
  window.onload = function () {
   var str='';
   for(var i=0; i<30 ;i++){
    var r = parseInt(Math.random()*100); //随机生成一个数字
    str += '<div>'+r+'</div>'; //拼接str
   }
   document.getElementById('container').innerHTML=str;
  }
 </script>

 二、使用Document、Element对象自带的一些函数

       也设定一个应用场景,如下图

       获取input中的信息,根据右边的按钮,分别插入到下方红色矩形的左边或者右边。

      

解决思路分三步:

1、创建元素:Document.createElement()
2、找到父级元素 :可以通过Id、name、标签名、class、匹配指定的css选择器
3、在指定位置插入元素:element.appendChild()、element.insertBefore()       

实现代码:       

<div id="div-input">
 <input type="text" id="txt_input" value="4"/>
 <input type="button" id="leftInsert" value="左侧入" />
 <input type="button" id="rightInsert" value="右侧入" />
</div>
<div id="container">
 <span>1</span>
 <span>2</span>
 <span>3</span>
</div>
 <script>
  window.onload = function () {
   var inputValue= document.getElementById('txt_input').value;
   document.getElementById('leftInsert').onclick=function(){
    //左侧入
    var span = document.createElement('span'); //1、创建元素
    span.innerHTML=inputValue;
    var container = document.getElementById('container'); //2、找到父级元素
    container.insertBefore(span,container.childNodes[0]);//插入到最左边
   }
   document.getElementById('rightInsert').onclick=function(){
    //右侧入
    var span = document.createElement('span'); //1、创建元素
    span.innerHTML=inputValue;
    var container = document.getElementById('container'); //2、找到父级元素
    container.appendChild(span); //3、在末尾中添加元素
   }
  }
 </script>

以上就是本文的全部内容,希望对大家的学习有所帮助。

相关文章

  • javascript一点特殊用法

    javascript一点特殊用法

    javascript中函数的特殊性与普通,对待函数可以像对待普通变量一样
    2008-05-05
  • JavaScript获取当前网页最后修改时间的方法

    JavaScript获取当前网页最后修改时间的方法

    这篇文章主要介绍了JavaScript获取当前网页最后修改时间的方法,涉及javascript中document.lastModified属性的使用技巧,需要的朋友可以参考下
    2015-04-04
  • js实现一个简单的数字时钟效果

    js实现一个简单的数字时钟效果

    本文主要介绍了js实现一个简单的数字时钟效果的示例代码。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-03-03
  • 如何正确理解javascript的模块化

    如何正确理解javascript的模块化

    模块化在项目中十分的重要,一个复杂的项目肯定有很多相似的功能模块,如果每次都需要重新编写模块肯定既费时又耗力。但是引用别人编写模块的前提是要有统一的“打开姿势”,如果每个人有各自的写法,那么肯定会乱套,下面介绍几种JS的模块化的规范。
    2017-03-03
  • 解析Json字符串的三种方法日常常用

    解析Json字符串的三种方法日常常用

    下面将介绍日常中使用的三种解析json字符串的方法,非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2018-05-05
  • 分享一个自己写的简单的javascript分页组件

    分享一个自己写的简单的javascript分页组件

    这篇文章主要分享一个自己写的简单的javascript分页组件,效果十分不错,代码也很详尽,这里推荐给小伙伴们。
    2015-02-02
  • 基于javascript如何传递特殊字符

    基于javascript如何传递特殊字符

    在 JavaScript 中使用反斜杠来向文本字符串添加特殊字符,下面通过本篇文章给大家介绍javascript如何传递特殊字符,对js传递特殊字符相关内容感兴趣的朋友一起学习吧
    2015-11-11
  • 在JS中判断两个对象是否相等方法详解

    在JS中判断两个对象是否相等方法详解

    在JavaScript中,判断两个对象是否相等有多种方法,取决于你对相等的定义以及对象属性的类型,本文将介绍几种常见的方法,感兴趣的同学可以参考阅读
    2023-05-05
  • 详解微信小程序-扫一扫 wx.scanCode() 扫码大变身

    详解微信小程序-扫一扫 wx.scanCode() 扫码大变身

    这篇文章主要介绍了微信小程序-扫一扫wx.scanCode() 扫码大变身,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • Bootstrap3 input输入框插入glyphicon图标的方法

    Bootstrap3 input输入框插入glyphicon图标的方法

    这篇文章主要介绍了Bootstrap3 input输入框插入glyphicon图标的方法的相关资料,需要的朋友可以参考下
    2016-05-05

最新评论