ie下的scroll和resize的优化
1.onscroll
function scrollEvent(){ //do something... console.log('do something...'); } var flag=true; window.onscroll=function (){ if(flag){ scrollEvent(); flag=false; setTimeout(function(){flag=true},200); //又可以继续操作了滴保证我们的事件指执行一次滴呀 }else{ //所以说,这里,还是不要写任何其他的代码为好滴呀 } }
方式二:
var timer=null; window.onscroll=function (){ if(timer){ clearTimeout(timer); } timer=setTimeout(function (){ console.log('srolling...'); //把要执性的代码放在这里滴呀; //总的来说,方法还是比较管用滴啊 },100) }
总的来说,还是比较喜欢第一种方式滴呀;
2.onresize
var resizeTimer=null; $(window).on('resize',function (){ if(resizeTimer){ clearTimeout(resizeTimer); }else{ resizeTimer=setTimeout(function (){ console.log('window resize...'); },400) } })
总结:
解决方法,都是加一个定时器,然后再加一个flag标签