在线客服
扫描二维码
下载博学谷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操作的性能的具体方法。相信看完本篇文章,大家如果在前端面试题再遇到这样的问题,就可以能轻松应对啦。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
web前端网页开发离不开的三要素
Web前端是目前高薪岗位之一,是从最开始的页面开发不断发展优化而产生的一个特定的岗位。现在web前端开发一定会用到的三门技术:HTML、CSS、JavaScript。无论是多么炫酷的页面都是这三门技术的组合而形成的。
9805
2019-06-24 18:07:06
Web前端开发培训课程怎么样?
Web前端开发培训课程怎么样?博学谷的Web前端课程适合在校大学生、刚毕业的技术小编、零基础想转行非在职的IT人员、有基础想转行的在职IT人员。分阶段学习前端基础、移动Web网页开发、JavaScript网页编程、Node与Ajax、前端工具和框架、项目实战等课程。
8410
2019-09-10 11:15:44
零基础如何学好前端?有什么建议?
前端作为互联网时代直接触达用户的窗口,大到我们每天浏览到的网站,小到一次点击按钮的页面,前端无处不在。并且在产品的众多开发环节之中,最能让用户直观感受到的就是前端开发。因而前端行业的广阔发展前景也吸引了不少人的转业学习。那么,零基础如何学好前端呢?有什么建议吗?本文将为初学者详细解答一下这两个问题,下面一起来看看吧!
5840
2020-03-20 19:05:49
学前端开发应该从哪里入手?
学前端开发应该从哪里入手?移动互联网的快速发展,多屏互动和多端兼容友好的界面成为目前所有系统重要的需求,前端开发工程师成为目前市场紧俏、火爆的人才。零基础入门先了解前端学习路线,明确学习前端的路径、入门学习前端基础,了解未来发展趋势,避免走弯路。
6566
2020-07-08 09:50:35
什么是HTML?Web前端基础知识
什么是HTML?Web前端基础知识,HTML简易,超级文本标记语言版本升级采用超集方式灵活方便;可扩展性强。广泛应用带来了加强功能,增加标识符等要求;与平台无关性;通用性强,HTML是网络的通用语言,允许网页制作人建立文本与图片相结合的复杂页面,这些页面可以被网上任何其他人浏览到,无论使用的是什么类型的电脑或浏览器。
6144
2020-07-16 15:06:20
