在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
众所周知,在富网页应用中编写脚本时,无可避免地要跟DOM打交道,但是频繁地对于DOM进行操作,又会导致损耗性能,那么如何才能优化这个性能瓶颈呢?其实这也是前端面试的必考题,一般来说有大致七种方式,归纳起来都是从三种角度出发,即访问和修改DOM元素;修改DOM样式;通过DOM事件处理程序来响应用户。下面我们来详细讲解一下优化DOM操作的性能。
1、查找元素的优化。因为 ID 是唯一的,也有原始的方法,因此使用ID 查找元素是最快的,其次的是根据类和类型查找元素,通过属性查找元素是最慢的,因此应该尽可能的通过 ID 或者类来查找元素,避免通过属性来查找元素。
2、减少访问和改变DOM元素,包括添加,修改,删除DOM。改变DOM就会引起浏览器渲染,而渲染是相当慢的,因此应该避免不必要的渲染。
3、减少改变DOM的样式类等。改变DOM元素的样式,类也会导致浏览器渲染,因此也应该减少不必要的操作。
4、批量修改DOM时从文档流中摘除该元素 ,对其应用多重改变 , 将元素带回文档中 , 这样可以最小化重绘和重排版 。
具体方法:
(1)隐藏元素,进行修改,然后再显示它。
(2)将原始元素拷贝到一个脱离文档的节点中,修改副本,然后覆盖原始元素。
5、减少 iframeiframe 需要消耗大量的时间,并阻塞下载,建议少用。
6、样式放在 header 中,脚本放在关闭标签</body>之前样式放在。header 中,可以加快渲染,脚本放在关闭标签</body>之前可以加快下载速度,不免阻塞下载。
7、使用事件委托,减少绑定事件的数量。多次访问同一DOM,应该用局部变量缓存该DOM。
以上就是如何优化DOM操作的性能的具体方法。相信看完本篇文章,大家如果在前端面试题再遇到这样的问题,就可以能轻松应对啦。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
前端学习第一步:HTML标签基本知识
HTML是进入互联网开发岗位的第一步。尤其是前端开发岗位与HTML的接触是最多的。根据HTML4版本的参考手册共计有89个标签(HTML5变动较大作为后期重点学习的知识内容)。每一个标签都有独特的意思。在刚开始学习的时候,追求的是记住标签,而在真正的工作运用中,一定要理解它。下面我们一起来看看其中最常用的一些HTML标签吧。
8251
2019-07-15 17:51:42
Web前端开发在线课程怎么样?要学那些技术知识?
Web前端开发在线课程怎么样?要学那些技术知识?想从事前端开发,目前有三种途径,即自学、参加线下面授班、参加在线课程。自学对于个人的自控能力要求非常严格,面授班则需要脱产学习,相较之下越来越多的人选择参加Web前端开发在线课程。
7747
2019-07-29 17:44:51
在线学习前端开发需要什么基础?
在线学习前端开发需要什么基础?会这么问的小伙伴,一定是不了解博学谷的零基础前端课程。一般来讲,普通的在线课程确实需要学习者有一些的前端知识的基础,比如HTML、CSS和JavaScript基础语法等等。但是博学谷专门为零基础的学员开设了前端在线课程,内容循序渐进,搭配着相关的项目实践,可以说是完全从零开始手把手的前端教程,即便是IT小白也可以跟得上课程进度。
7583
2019-10-25 19:09:09
前端数据结构面试题整理附答案
随着人们对前端行业的逐渐重视,就业市场也对前端人才提出了更高的要求。如今,中高级的前端工程师可以说一票难求。要想成为各大企业公司争抢的稀缺人才,前端工程师除了写写页面,绑定事件,向后台发发数据,还要掌握数据结构相关的知识。本文为大家整理了前端中比较基础的数据结构面试题,并附上了答案,下面我们一起看看吧!
8346
2020-04-17 15:09:25
参加前端培训能达到就业的水平吗?
参加前端培训能达到就业的的水平吗?这个问题的答案是肯定的。这也正是现在越来越多的同学在面临就业时,选择参加技术培训的主要原因之一。为了能让同学们能更明确地认识到参加前端培训的学习效果和就业情况,我们从以下四个方面来聊聊为什么说参加前端培训能达到就业的水平。
4809
2020-08-07 10:12:26