dom编程

本文探讨了DOM与ECMAScript的关系,指出DOM访问需耗时。深入解析HTML集合与文档的实时连接特性,以及浏览器生成DOM树和渲染树的过程。详细说明了重排与重绘对性能的影响,及浏览器如何优化重排。最后介绍了事件委托的概念,以减少事件处理器的绑定。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文章目录


  • dom api是和ECMScript分开的,所以,ecm访问dom是要耗时的。

  • HTML集合一直是和文档保持连接的,即使只查询集合中元素的个数,都会重复执行查询过程。

  • 浏览器下载完页面后,会解析并生成两个内部结构:DOM树、渲染树

  • 如果dom的变化影响了元素的几何属性,会导致重排,并重新构成渲染树(重排),并将受影响的渲染树部分进行绘制(重绘)。所以,发生了重排一定会发生重绘。

  • 大多数的浏览器对重排做了优化处理,通过队列化修改并批量执行来优化重排过程。不过,获取布局信息的操作会导致队列刷新。

  • 事件委托。只需给外层元素绑定一个处理器,就可以处理在其子元素上触发的所有事件。

参考文献

高性能JavaScript

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值