DOM解析和优化

DOM解析

1. css不会阻塞DOM解析(DOM Tree),但会阻塞DOM渲染(css Tree + DOM Tree -> render Tree )
2. JS阻塞DOM解析,但浏览器会预解析DOM,提前下载相关资源,img,script等

DOM优化

DOM操作会导致repaint和reflow,减少repaint和reflow可以优化性能。

1.合并多次dom操作为一次

element.style.borderColor = '#f00';
element.style.borderStyle = 'solid';
element.style.borderWidth = '1px';

变成

// 优化方案1,用+=,否则会覆盖原有样式
element.style.cssText += 'border: 1px solid #f00;';
// 优化方案2
element.className += 'empty';

2.使用文档片段(documentFragment)或innerHTML批量插入DOM

3.读取DOM元素的布局信息,并且用变量缓存,而不是在循环中多次读取

for (var i=0; i < len; i++) {
    myElements[i].style.top = targetElement.offsetTop + i*5 + 'px';
}

变为

var targetTop = targetElement.offsetTop;
for (var i=0; i < len; i++) {
    myElements[i].style.top = targetTop+ i*5 + 'px';
}

4.动画元素使用absolute定位,脱离文档,使用transform,opacity等进行动画,不要使用left,top进行动画

5.使用事件委托减少事件绑定

posted @   全玉  阅读(780)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示