我想设置逻辑,当用户开始滚动页面时,滚动完成后,我如何才能完成这一点?
我想避免以下情况,因为这意味着我的逻辑将被不必要地重复地解雇
$(window).scroll(function(){ console.log("scrolling"); });
你可以试着定义你是自己的 debounced events . 一个(非常粗糙的)实现看起来像这样:
var t, l = (new Date()).getTime(); $(window).scroll(function(){ var now = (new Date()).getTime(); if(now - l > 400){ $(this).trigger('scrollStart'); l = now; } clearTimeout(t); t = setTimeout(function(){ $(window).trigger('scrollEnd'); }, 300); });
见: http://www.jsfiddle.net/yijiang/fGmbe/ 现场演示