数码资讯
窗口调整大小和滚动事件的基本优化思想
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
同事们在项目中使用滚动事件来加载数据,结果是IE.的悲剧,给出了一种简单的优化方法,效果很明显。
只要用户改变窗口的大小,它会重新计算一些内部元素的大小,这可能会导致一个重新整个页面的渲染,造成了大量的CPU消耗。例如,呼叫的调整方法,用户改变窗口的大小,将不会停止被触发的IE低版本可能会陷入假死的状态。所以是窗口滚动事件,鼠标滚动或拖动滚动条不停滚动的事件,如果处理事情,低版本的IE会假死的状态。
基本优化思想:在一定的时间内,只执行一个调整大小的事件函数。
复制代码代码如下所示:
无功resizetimer = null;
$(窗口),('resize功能()){
如果(resizetimer){
ClearTimeout(resizetimer)
}
resizetimer = setTimeout(){()函数(
console.log(窗口大小);
},400);
}
);
滚动事件优化相同的原因。
只要用户改变窗口的大小,它会重新计算一些内部元素的大小,这可能会导致一个重新整个页面的渲染,造成了大量的CPU消耗。例如,呼叫的调整方法,用户改变窗口的大小,将不会停止被触发的IE低版本可能会陷入假死的状态。所以是窗口滚动事件,鼠标滚动或拖动滚动条不停滚动的事件,如果处理事情,低版本的IE会假死的状态。
基本优化思想:在一定的时间内,只执行一个调整大小的事件函数。
复制代码代码如下所示:
无功resizetimer = null;
$(窗口),('resize功能()){
如果(resizetimer){
ClearTimeout(resizetimer)
}
resizetimer = setTimeout(){()函数(
console.log(窗口大小);
},400);
}
);
滚动事件优化相同的原因。
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。