如何等待“调整大小"事件的“结束"然后才执行操作?

2022-01-30 00:00:00 resize jquery javascript html jquery-events

所以我目前使用类似的东西:

So I currently use something like:

$(window).resize(function(){resizedw();});

但是在调整大小过程进行时,这会被多次调用.是否可以在事件结束时捕获事件?

But this gets called many times while resizing process goes on. Is it possible to catch an event when it ends?

推荐答案

我很幸运得到了以下推荐:http://forum.jquery.com/topic/the-resizeend-event

I had luck with the following recommendation: http://forum.jquery.com/topic/the-resizeend-event

这里是代码,所以你不必挖掘他的帖子的链接 &来源:

Here's the code so you don't have to dig through his post's link & source:

var rtime;
var timeout = false;
var delta = 200;
$(window).resize(function() {
    rtime = new Date();
    if (timeout === false) {
        timeout = true;
        setTimeout(resizeend, delta);
    }
});

function resizeend() {
    if (new Date() - rtime < delta) {
        setTimeout(resizeend, delta);
    } else {
        timeout = false;
        alert('Done resizing');
    }               
}

感谢 sime.vidas 提供代码!

Thanks sime.vidas for the code!

相关文章