JavaScript/JQuery:$(窗口)。调整大小如何在调整大小完成后触发?我使用这样的JQuery:$(window).resize(function() { ... });但是,如果该人通过拖动窗口边缘使其更大/更小来手动调整浏览器窗口的大小,则.resize事件多次触发。问题:如何在浏览器窗口调整大小完成后(使事件只触发一次)调用函数?
3 回答
RISEBY
TA贡献1856条经验 获得超5个赞
var delay = (function(){ var timer = 0; return function(callback, ms){ clearTimeout (timer); timer = setTimeout(callback, ms); };})();
$(window).resize(function() { delay(function(){ alert('Resize...'); //... }, 500);});
PIPIONE
TA贡献1829条经验 获得超9个赞
$(window).bind('resizeEnd', function() { //do something, window hasn't changed size in 500ms});
$(window).resize(function() { if(this.resizeTO) clearTimeout(this.resizeTO); this.resizeTO = setTimeout(function() { $(this).trigger('resizeEnd'); }, 500); });
添加回答
举报
0/150
提交
取消