当前位置: 首页 > 面试题库 >

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

东郭自珍
2023-03-14
问题内容

所以我目前使用类似:

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

但这在调整大小过程继续进行时被多次调用。结束时是否可以捕捉事件?


问题答案:

我很满意以下建议:

这是代码,因此您不必深入研究他帖子的链接和来源:

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');
    }               
}


 类似资料:
  • 问题内容: CSS3的resize属性可以分配给任意元素。我正在寻找一种方法来检测divs的这种大小变化(我不介意目前仅在Firefox中有效): 不幸的是,该事件似乎并未在div上触发。发生这种由用户指示的调整大小时,如何在JavaScript中进行检测? 编辑: FWIW我已经在Mozilla打开了一个错误报告。 问题答案: 听事件。从这个答案中得到了想法,这个jsFiddle似乎可以在Fir

  • 下面的函数不能像我希望的那样工作;作为一个JS新手,我不明白为什么。 我需要它等待5秒钟,然后检查是否为。 目前,它不等待,只是立即检查。

  • 问题内容: 浏览器窗口调整大小后如何调用函数? 我正在尝试这样做,但是遇到了问题。我正在使用JQuery Resize事件函数: 但是,如果用户手动调整浏览器窗口的大小,则会 连续 调用此功能。这意味着,它可能会在很短的时间间隔内多次调用此函数。 如何仅 一次 调用调整大小功能(一旦浏览器窗口调整大小后)? 更新 也不必使用全局变量。 问题答案: 您可以将参考ID存储到任何setInterval或

  • 问题内容: 我有多个ajax查询同时运行,我希望它们等待最后一个返回,然后在所有ajax调用上运行成功处理程序。作为简化示例,请考虑: 假设所有请求都同时发送。由于它们是异步的,因此它们将在不同的时间返回。假设一个请求返回需要100毫秒,而另一个请求则需要3000毫秒。我显然不知道哪个会最先返回。他们都以某种方式更新了DOM,我希望一次将这些更改一次全部显示给查看器。我该怎么做呢? 我能想到的最好

  • 问题内容: 我正在使用Java编写一个简单的绘画程序,并且每当调整JFrame组件的大小时,我都希望调用某种方法。但是我找不到像windowResizedListener之类的任何方法或诸如windowResizedEvent之类的事件。我能做什么?! 问题答案: 实现一个具有:

  • 我是一个新的反应,但我已经工作了很多年的Vue。当我需要等待一个动作完成时,我现在被困在一个区域。在操作完成后,我必须进行另一个操作调用或在那里执行一些操作。但它不会等待操作完成并开始执行下面的代码。 方法: 从其中调度操作的方法: 现在,在上面的代码中,重定向并不是在等待调度完成。我试过这个,但它不起作用: