在线客服
扫描二维码
下载博学谷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操作的性能的具体方法。相信看完本篇文章,大家如果在前端面试题再遇到这样的问题,就可以能轻松应对啦。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
从前端到全栈开发的技术迭代升级
从前端到全栈开发的技术迭代升级,从前端技术演进看前端发展野心、同时满足技术需求和商业需求的前端全栈、打破物理隔离,实现真全栈、小程序云服务的发展优化、 从前端开发到全栈开发等五个方面具体来看看。
10260
2019-05-22 11:10:57
为什么要使用HTML5开发手机APP?
为什么要使用HTML5开发手机APP?从未来的发展趋势看,现在的大部分开发商都因为HTML5的便捷性而广泛使用它,而且使用HTML5可以带来更好的互动。从程序员开发的角度来讲,HTML5的代码更加清晰简单。下面我们就从HTML5的七大特性,来详细分析使用HTML5开发手机APP的优势。
6234
2019-10-10 16:55:06
企业级微信小程序开发实战学什么?
小程序无需安装或者卸载,不占用手机内存不受手机系统的限制一触即用。小程序目前入口不少于50个,且能覆盖附件的微信用户;与线上引流相结合,具备强大的传播能力。因此掌握微信小程序开发技能必不可少。
5779
2020-01-03 16:33:33
Web前端开发语言有哪些?各自有什么优势?
Web前端开发语言有哪些?各自有哪些优势?就目前Web前端开发可能涉及的语言来讲,有PHP语言、JavaScript、Ruby、HTML5、Java和Python。当然并不是说以上这些语言前端开发工程师都必须掌握,其实只选择一两门熟练掌握即可。下面我们来看看这些Web前端开发语言的具体介绍和自身的优势。
15071
2020-01-12 16:30:51
Web前端开发常用工具推荐
随着互联网发展的愈加深入,前端作为公司的门面,人才需求会越来越大。正因如此,才吸引了那么多的人投身前端行业。对于刚入门前端的新手和一些资深的前端开发人员来讲,掌握一些常用的Web前端开发工具是十分有必要的。好用的工具可以帮助大家更好的完成工作,并且提高开发的效率。下面我就来推荐一些Web前端开发常用工具。
6299
2020-03-26 20:33:32