首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

如何更优地去创建DOM元素

本文作者:IMWeb yuchenli 原文出处:IMWeb社区 未经同意,禁止转载 如何更优地去创建DOM元素 创建DOM元素是最为基本的DOM操作,这里先举个栗子 这里先使用createElement...这里简单地通过createElement创建DOM是存在比较严重的性能问题的: 1、createElement本身就是不小的性能开支 2、 每次创建li元素都换插入到DOM中,会引起多次重排和重绘。...innerHTM 对面上面那种问题,可能就会想到通过innterHTML方式去创建DOM元素 这里先举个栗子: var str = ''; for (t = 0; t < num; t++) {...cloneNode cloneNode是用于克隆节点的,相比直接调用createElement创建DOM元素而言,它所花费的开销会更小些,就好比:读书的时候,抄作业要比做作业的容易的多。...那么还有没有更快的方式去创建DOM元素呢?接下来先介绍一个东西DocumentFragment DocumentFragment DocumentFragment是示一个没有父级文件的最小文档对象。

2.1K10

DOM元素定位

, 16 2月 2021 作者 847954981@qq.com 前端学习, 我的编程之路 DOM元素定位 在HTML中有许多如图片等的DOM元素,在网页下拉移动中,DOM元素的位置定位通常通过 position...属性来完成 在一般情况下我们DOM元素的默认position的值为 static 除此之外position还拥有 relative(相对定位) absolute(绝对定位) fixed(固定定位) sticky...,即原本DOM元素下方的元素会向上占住原本DOM元素的位置,类似于网页新开了一个图层的效果。...固定定位 fixed fixed原理很简单,就是讲DOM元素固定在整个页面某一位置不会随着下拉页面而改动,类似一个图层放置在那里。...可以利用如 right:50px 等来调节位置 粘性定位 sticky 这个简单说就是当页面下拉到DOM元素到达了设定的位置,DOM元素将不会再随下拉移动,效果如页面内图片 顺便一提,如前面所说,网页存在类似图层一说

92130

React.js 实战之 元素渲染将元素渲染到 DOM

元素是构成 React 应用的最小单位 元素用来描述在屏幕上看到的内容 ?...与浏览器的 DOM 元素不同,React 当中的元素事实上是普通的对象 React DOM 可以确保 浏览器 DOM 的数据内容与 React 元素保持一致 注意: 初学者很可能把元素的定义和一个内涵更广的定义...“组件”给搞混了 会在下节当中对组件进行详细的介绍 元素事实上只是构成组件的一个部分 将元素渲染到 DOM 中 首先我们在一个 HTML 页面中添加一个 id="root" 的 ?...在此 div 中的所有内容都将由 React DOM 来管理,所以我们将其称之为 “根” DOM 节点 我们用React 开发应用时一般只会定义一个根节点 但如果你是在一个已有的项目当中引入 React...的话,你可能会需要在不同的部分单独定义 React 根节点 要将React元素渲染到根DOM节点中,我们通过把它们都传递给ReactDOM.render() 的方法来将其渲染到页面上

2.5K20

jQuery操作DOM元素

最常见的场景莫过DOM元素操作和前端页面使用AJAX向服务器发送请求。...实现上述两个功能当然可以使用原生js来完成,但在实际开发过程中很少这样做,通常会使用一些别人封装好的js库来辅助我们的工作,jQuery就是这些辅助库中的一员。...的标签,返回类型是DOM元素数组 id $('#value'),选取页面上id=value的标签 $('[name]'),选取带有name属性的标签,返回类型是DOM元素数组 $('[name="tag...tr元素,返回类型是DOM元素数组 :odd $("tr:odd"),选取页面上索引为奇数的tr元素,返回类型是DOM元素数组 :not() $("input:not(:empty)"),所有不为空的...+ conditions); 元素操作 说明 hide() 隐藏元素 show() 显示元素 $('') 创建p元素 append() 向元素末尾添加子元素 appendTo

2.6K40

JavaScript 学习-34.HTML DOM 创建插入删除替换元素

前言 HTML DOM 可以创建一个新元素,并插入到指定元素的位置 createElement 创建元素 document.createElement() 可以创建一个元素 document.createTextNode...() 创建一个文本节点 appendChild() 方法可向节点的子节点列表的末尾添加新的子节点。...DocumentFragment 节点代表一个文档的片段,本身就是一个完整的 DOM 树形结构。 它没有父节点,parentNode 返回 null ,但是可以插入任意数量的子节点。...它不属于当前文档,操作 DocumentFragment 节点,要比直接操作 DOM 树快得多。 它一般用于构建一个 DOM 结构,然后再插入当前文档。...添加到div子元素,p标签前面 这是文本内容 // 创建元素节点 btn = document.createElement

2.2K30

DOM概述 选取文档元素

脚本化文档 客户端js的存在使得静态的html文档变成了可交付式的web应用 DOM概述 文档对象(DOM)是表示和操作html和xml文档内容的基础api。 <!...("span"); 这样能获取第一个p元素里的所有的span元素 另外document还有两个属性,分别是特殊的body,以及head元素,这两个元素如果源代码未包含,其浏览器会隐式的创建他们,以及documentElement...(拥有数组的属性,并且其length会有js解释器自动进行维护,并且可以进行折断)可以对NodeList类数组对象可以进行循环迭代,得出所有的节点。...e.innerHTML; // 返回序列化过的html代码,该方法继承自Element,所有Document对象的方法都基于其,因为同样是document继承来的,所以具有innerHTML方法 } ) // 创建一个数组...,并把该数组的元素传入回调函数中进行处理 注意,保存的不是快照,伴随着html中的DOM的更新,属于实时操作的,这一点灰常有用 如果在一个没有div中的有一个该方法,如果页面动态加载进的div元素,其中的

99260

DOM 元素的循环遍历

('popo') 获取 name 属性为 'popo' 的 dom 元素(若多个元素有相同的 name 属性,返回第一个) for-of、for 循环可获取每个 dom 元素: for(let val...(每个dom元素) for(let i = 0; i < a.length; i++) { console.log(a[i]) } // dom // ......(每个dom元素) query 方式 query 方式获取的 dom 元素,可使用==forEach、for-in、for-of、for==循环 forEach、for-of、for 循环的结果无差别...nextSibling:ele 的下一个同辈节点 previousSibling:ele 的上一个同辈节点 因为 childNodes 包含看不见的空格文本,还有注释等内容,所以使用起来不是太方便 因此,js...树进行深度优先的搜索 创建 NodeIterator 对象,需要使用 document 对象的 createNodeIterator 方法,该方法接收四个参数: root:搜索开始的节点 whatToShow

6K60
领券