Javascript函数节流的探讨
在功能节流的基本思想是一些代码不能重复执行无中断。在第一次调用函数,创建一个定时器,指定的时间间隔后运行的代码,当调用函数时的第二次,它清除以前的定时器和设置其他。如果以前的计时器已执行此操作没有任何意义。然而,如果以前的定时器还没有执行,它实际上是由一个新的定时器取代。目的是只有在执行功能的要求已经停止一段时间执行。
复制代码代码如下所示:
函数节流(方法,上下文){
ClearTimeout(方法。TID);
method.tid = setTimeout(){()函数(
method.call(背景);
},100);
}
应用实例:
假设有一个元素需要保持它的高度始终等于宽度,并且可以编码如下:
复制代码代码如下所示:
功能resizediv(){
var div = document.getelementbyid(mydiv );
div.style.height = div.offsetwidth +PX;
}
window.onresize =函数(){
节流阀(resizediv);
}
在这里,调整大小的功能放在一个单独的函数称为resizediv。然后onresize事件处理程序调用节流()介绍了resizediv函数而不是打电话resizediv()直接。在大多数情况下,用户感觉不到变化,虽然浏览器的储蓄可能非常大。