在线客服
扫描二维码
下载博学谷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操作的性能的具体方法。相信看完本篇文章,大家如果在前端面试题再遇到这样的问题,就可以能轻松应对啦。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
前端与移动开发培训课程怎么样?
在互联网技术高度发展的过程中,国内移动互联网技术已经跻身全球移动互联网领域的首位,由于平台多元化的发展,PC端、移动端、小程序等等前端展示效果越来越复杂。因此要求前端工程师不仅仅能够实现前端页面开发,还要能够兼容平台的多样化。为了更好的掌握技术,大部分前端工程师和想入行的小伙伴,都选择通过前端与移动开发培训的方式进入前端开发领域。那现在前端与移动开发培训课程怎么样呢?
8114
2019-09-10 18:31:19
如何学习前端?前端学习路线总结
随着多屏互动和多端兼容友好的界面变得越来与重要,前端工程师也成为了热门的研发技术岗位之一。随着就业市场大环境的改变,一方面是前端人才的紧缺,另一方面是对前端求职者的要求增高,所以我们需要学的东西也不能仅仅只停留在基础层面。那么,我们应该如何学习前端呢?下面为大家总结了一条前端学习路线,大家可以参考一下。
6739
2020-03-04 18:08:35
JavaScript语法教程学哪些知识点?
JavaScript语法需要学计算机基础、Javascript变量、数据类型、操作符、流程控制及案例、循环及案例、数组和冒泡排序、函数及应用、作用域及预解析、 javascript对象、内置对象及案例、简单类型和复杂类型等内容。
6048
2020-03-13 14:57:03
React项目开发教程推荐
React作为当下最流行的框架之一,拥有简单的代码逻辑和较高的性能,因此它可以很好地解决前端视图中所遇到的问题。本文将为大家推荐React项目开发教程,希望大家可以通过这个实战项目的课程,系统学习React新特性及其生态圈相关知识,并掌握实战开发的相关经验,下面我们一起来看看教程简介吧~
6478
2020-05-04 15:49:24
前端培训练习项目有哪些?
从PC到移动,前端无处不在,前端行业也一跃成为了目前大热的技术岗位。因此,不少小伙伴都想通过培训,快速进入前端行业。博学谷更是结合企业刚需,实时更新了技术热点,并且新增了不少企业级的项目实战。下面我们一起来看看,前端培训练习项目有哪些!
6104
2020-08-04 15:56:58
