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

代码:

<!DOCTYPE html>
<html>
<head>
<title>创建新元素</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<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>

解析:

创建新元素,一般来说有两种方法:第一种是直接修改父元素的innerHTML元素;第二种是使用createElement()函数创建,再用appendChild()函数进行DOM元素的挂接。

第一种方法使用起来比较简单,也很好理解,但是需要修改整个父元素所包含的HTML内容,如果父元素原先就包含了一些HTML内容,再进行DOM挂接的话,再进行DOM挂接的话,执行效率比较低。

第二种方法相对比较灵活,效率也相对较高,只是使用起来复杂一些。

DOM操作-动态创建网页元素的更多相关文章

  1. 用jQuery绑定事件到动态创建的元素上

    jQuery最常用的一个功能就是对DOM的操作,与之相关的比如对事件的绑定和Ajax动态内容加载.当我们绑定事件到Ajax load回来的内容上或其他动态创建的元素上时会发现事件没响应,和你预想的结果 ...

  2. jQuery 绑定事件到动态创建的元素上

    在进入主题之前,我们先来看一个前台页面经常用到的功能:点击页面输入框时自动选择其中文本. 很容易想到利用输入框的focus事件,当输入框获得焦点时,再调用jQuery的select()方法. Okay ...

  3. jquery动态创建页面元素

    jquery用$()方法动态创建一个页面元素,例如: var $div=$("<div title='动态创建页面元素'>欢迎创建一个新的div</div>" ...

  4. 基于jQuery动态创建html元素

    在做web前端开发的时候,经常遇到一些数据多少或则类型不能在运行之前就确定下来的情况,此时,数据的展示,就要借助于动态创建html元素来展示了. 常见的动态创建HTML元素的方式,有如下几种,大体都差 ...

  5. jquery 动态创建的元素,绑定事件无效之解决方法

    今天遇到一个问题,动态创建的元素,绑定事件无效,如下: js 代码如下: var OaddX = $('.detright div.duibi div.duibox ul li span'); // ...

  6. 动态创建html元素的几种方法

    可以通过以下几种方式动态创建html元素: 1.使用jQuery创建元素的语法 2.把动态内容存放到数组中,再遍历数组动态创建html元素 3.使用模版   □ 使用jQuery动态创建元素追加到jQ ...

  7. jQuery动态创建html元素的常用方法汇总

    在使用jQuery进行WEB程序设计的时候非常有用.分享给大家供大家参考.具体方法如下: 一般来说,可以通过以下几种方式动态创建html元素: 1.使用jQuery创建元素的语法 2.把动态内容存放到 ...

  8. js学习-DOM之动态创建元素的三种方式、插入元素、onkeydown与onkeyup两个事件整理

    动态创建元素的三种方式: 第一种: Document.write(); <body> <input type="button" id="btn" ...

  9. DOM操作,控制HTML元素 (原生JS)

    文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法.DOM 将HTML文档呈现为带有元素.属性和文本的树结构(节点树). 先来看看下面代码: 将HTM ...

随机推荐

  1. 记一次-angular-数字格式化

    一个收费功能模块,需要做数据验证. input标签的ng-model的数据格式化 <input type="number" class="form-control& ...

  2. wakeup_train运行遇到的问题记录

      运行前需要更改的地方:   1.matlab安装的路径以及matlab的license文件     2.噪声的路径;background.scp,以及噪声文件     3.run.sh文件中一处f ...

  3. Win7和Ubuntu下mysql 安装配置

    Windows下安装 下载对应版本的mysql安装包安装,如果安装目录为 C:\Program Files\MySQL\MySQL Server 5.6 增加环境变量 MYSQL_HOME=C:\Pr ...

  4. 解决WordPress邮件无法发送问题

    1 安装插件 Wp Mail Bank 2 开启第三方SMTP服务 以163为例:设置 - POP3/SMTP/IMAP  开启,会要求设置授权码 3 配置插件:Wp Mail Bank - sett ...

  5. 如何安装使用Impala

      一.Impala简介 Cloudera Impala对你存储在Apache Hadoop在HDFS,HBase的数据提供直接查询互动的SQL.除了像Hive使用相同的统一存储平台,Impala也使 ...

  6. 淘淘商城_day06_课堂笔记

    今日大纲 实现单点登录系统 基于单点登录系统实现,用户的注册和登录 商品数据同步问题 问题 后台系统中将商品修改,前台系统没有进行数据的同步,导致前端系统不能够实时显示最新的数据. 解决 后台系统中商 ...

  7. linux下如何使用vnstat查看服务器带宽流量统计

    因为很多vps或者服务器都是限流量的,但是又很多服务商并没有提供详细的流量表,比如每天的流量表,所以肯定有人很想知道自己服务器到底跑了多少流量. vnstat就是一个很好用的服务器流量统计命令.我截几 ...

  8. Java中的使用了未经检查或不安全的操作

    1. javac -Xlint:unchecked MyMath.java检查不安全的操作 /***************************************************/ ...

  9. jQuery进行简单验证的正则表达式

    下面都是一些比较常用简单的验证,像那些特殊的复杂的情况这里不进行考虑 1.验证电话号码或者手机号码 ? 1 2 3 4 5 6 7 8 9 10 /**  * 验证电话号码(手机号码+电话号码)  * ...

  10. laravel5.2/laravel5.3入门指南 Windows 上快速安装并运行 Laravel 5.x

    1 首先要搭建本地服务器环境推荐phpstudy2016及wampServer3.0.6 下载链接可参考 http://www.cnblogs.com/zzcit/p/5823742.html 注意一 ...