性能更好的API
用对选择器
id 选择器(#myid)
类选择器(.myclassname)
标签选择器(div,h1,p)
相邻选择器(h1+p)
子选择器(ul > li)
后代选择器(li a)
通配符选择器(*)
属性选择器(a[rel=“external”])
伪类选择器(a:hover,li:nth-child)
使用 requestAnimationFrame 来替代 setTimeout 和 setInterval
希望在每一帧开始的时候对页面进行更改,requestAnimationFrame 就是告诉浏览器——你希望执行一个动画,并且要求浏览器在下次重绘之前调用指定的回调函数更新动画。该方法需要传入一个回调函数作为参数,该回调函数会在浏览器下一次重绘之前执行,使用 setTimeout 或者 setInterval 来触发更新页面的函数,该函数可能在一帧的中间或者结束的时间点上调用,进而导致该帧后面需要进行的事情没有完成,引发丢帧
使用 IntersectionObserver 来实现图片可视区域的懒加载
传统的做法中,需要使用 scroll 事件,并调用 getBoundingClientRect 方法,来实现可视区域的判断,即使使用了函数节流,也会造成页面回流。使用 IntersectionObserver,则没有上述问题
————————————————
版权声明:本文为 CSDN 博主「马小兜-」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43514149/article/details/107834647
评论
LivereValine