如何阻止函数调用太快(函数节流)或者太多次(函数防抖)
有时候,当用户频繁的与UI界面操作交互时,例如:窗口调整(触发resize),页面滚动,上拉加载(触发scroll),表单的按钮提交,商城抢购疯狂的点击...(触发mousedown),而实时的搜索(keyup,input),拖拽等
当你频繁的触发用户界面时,会不停的触发事件处理函数,换而言之,当出现连续点击,上拉加载,实时搜索,对DOM元素频繁操作,请求资源加载等耗性能的操作...:
鼠标滚轮页面上拉(onScroll),下拉刷新懒加载
窗口尺寸改动(onresize)
拖拽
若是高频操作,若不进行一定的处理,必然会造成多次数据的请求,服务器的压力,这样代码的性能是非常低效的,影响性能...如上输入框效果所示,每当输入框输入值后,当键盘弹起时,执行事件处理函数,而不应该是键入内容时都触发一次事件处理函数
同理,搜索引擎,表单联想查询功能时,不是根据用户键入的字母,数字,内容同时进行Ajax...,总是频繁的发送Ajax请求,那就造成页面卡顿,服务器端的压力了
正常的效果 示例效果如下所示:应该等键盘内容输入完之后,才触发事件处理函数
?