三种动态创建元素的区别

简介: 三种动态创建元素的区别document.createElement()document.write()innerHTML

三种动态创建元素的区别

  1. document.createElement()
  2. document.write()
  3. innerHTML

首先 write

document.write('写入的内容');
复制代码

调用这个方法之后,整个页面的内容将会被替换为写入的内容,所以这个方法只能在页面加载完成之前调用,否则会导致页面内容丢失。

也就是说,如果此方法在页面加载完成之后调用,会导致整个页面只剩下write方法里面的内容。

其次 createElement

var div = document.createElement('div');
div.innerHTML = '写入的内容';
document.body.appendChild(div);
复制代码

这个方法是动态创建一个元素,然后将这个元素添加到页面中。

相当于在页面中床架一个文本节点,然后通过appendChild方法将这个文本节点添加到页面中。这个方法不会导致页面的重绘,也就不会出现write的问题。

最后 innerHTML

element.innerHTML = '写入的内容';
复制代码

这个方法是直接将所选元素的内容替换为写入的内容,所以这个方法也不会导致页面的重绘。但是如果所选节点为body,那么也会导致页面的重绘。



相关文章
|
5月前
|
JavaScript
js 数组移除指定元素【函数封装】(含对象数组移除指定元素)
js 数组移除指定元素【函数封装】(含对象数组移除指定元素)
44 0
|
7月前
|
JavaScript 前端开发
JavaScript DOM 操作:如何动态创建和插入元素?
使用JavaScript的`createElement`, `createTextNode`和`appendChild`方法可动态创建并插入元素。
54 2
|
JavaScript 前端开发
JavaScript基础之操作元素,修改元素属性
JavaScript基础之操作元素,修改元素属性
68 0
|
安全 编译器 数据安全/隐私保护
对象的动态创建和销毁以及对象的复制,赋值
🐰对象的动态创建和销毁 🐰对象的复制 🐰对象的赋值
lodash遍历并继承对象属性,自定义分配
lodash遍历并继承对象属性,自定义分配
143 0
元素中必知重要属性和方法
上一篇文章我们学习了 Angular 中自定义 Video 操作,如果读者留意的话,会发现在这篇文章中就开始操作元素的属性 scrollLeft,这是很常用的一样属性。那么还有什么属性和方法比较重要呢?其又代表什么意思呢?下面我们进入主题。
元素中必知重要属性和方法
01 v-for循环绑定类名 v-bind 结合三目运算 动态添加类
01 v-for循环绑定类名 v-bind 结合三目运算 动态添加类
|
存储
集合作为函数参数传参时创建新集合对象的作用
易错点——List集合集合作为函数参数传参时创建新集合对象的作用
181 0
|
Web App开发 JSON JavaScript
JavaScript对象定义与属性遍历
本文目录 1. 概念 2. 定义对象 3. 属性遍历
163 0
|
C# 数据可视化 容器
WPF利用VisualTreeHelper遍历寻找对象的子级对象或者父级对象
原文:WPF利用VisualTreeHelper遍历寻找对象的子级对象或者父级对象 简介   本文将完整叙述我利用VisualTreeHelper实现题述功能的全部过程,想直接看函数实现的朋友可以跳到函数实现部分。
1583 0