尽量减少文档大小
使用时加载
不使用图片
img 标签或 background-image 样式通过路径/网址来引用图片时,都会产生 http 请求,用以下不使用图片的方案,便能通过减少http请求来提升页面渲染性能。
适用场景:单次使用的小图片
很多网站都提供了转换功能,如:
http://tu.chacuo.net/imagetodataurl/
上传图片后,复制图片的 URL 数据作为 img 标签的 src 值即可。
<img src="data:image……省略具体图片的URL代码……" alt="">
缺点:
https://blog.csdn.net/weixin_41192489/article/details/126133834
较少 HTTP 请求
将请求进行合并,减少请求数量
http请求耗时的地方有:域名跳转、DNS查找、TCP链接初始化、从缓存中查询等
减少传输代价的常见技术手段有:
你不知道的性能消耗
<div id="test">
<img src="images/test.png" alt="" />
div>
@media all and (max-width: 600px) {
#test {
display:none;
}
}
页面的宽度不足600px时。虽然图片元素随父容器#test被隐藏而不可见,但实际上图片请求仍然被发出。
更快的样式选择器
getElementsByClassName
的OPS更高(几乎是querySelectorAll
的800倍),效率更好。
使用类名进行选择时,请优先使用 getElementsByClassName
let elements = Array.prototype.slice.call(
document.getElementsByClassName
? document.getElementsByClassName(lazyElementClassName)
: document.querySelectorAll('.' + lazyElementClassName)
);
此处为兼容性写法:IE8不支持document.getElementsByClassName,所有的浏览器都支持document.querySelectorAll
使用 requestAnimationFrame 提升 web 性能
https://blog.csdn.net/weixin_41192489/article/details/126247756
能使用CSS实现的功能勿用JavaScript
JavaScript脚本的运行成本是很高的!
借助后端的力量
性能测试工具
更多技术
欢迎大家留言共创,将持续更新哦!