Gol*_*wby 26 javascript jquery
可能重复:
在jQuery中调用事件调用
我喜欢jQuery的.change()功能,但是当用户在select下拉列表中快速更改选项时,我想阻止触发大量的AJAX请求.例如,当用户使用鼠标滚轮时,它会在选择新选项时触发每个选项.
我想提出一个很好的干净方法来处理只有在用户停止更新选择下拉列表后才发送这些更新.
有没有一种处理这种情况的巧妙方法?
glo*_*tho 79
执行此操作的典型方法是使用setTimeout和clearTimeout:
var wto;
$('#select').change(function() {
clearTimeout(wto);
wto = setTimeout(function() {
// do stuff when user has been idle for 1 second
}, 1000);
});
Run Code Online (Sandbox Code Playgroud)
我建议你使用underscore.js然后:
var newFunction=_.debounce(function (){
alert('You function, after use stop scroll')
},1000); //Wait seconds after he stops
$('#select').change(newFunction);
Run Code Online (Sandbox Code Playgroud)
阅读更多关于underscore.debounce的信息.