如何在大小调整完成后仅调用一次 jQuery Resize 事件
问题概述
使用 jQuery 的 resize 事件调用函数时,可能会在用户调整大小时重复调用该函数浏览器窗口。目标是在调整大小完成后仅触发该函数一次。
解决方案
要实现这一点,我们可以利用 setTimeout 函数和超时变量:
var timeout; $(window).resize(function() { // Function to execute when resizing is complete timeout = setTimeout(function() { // Execute the desired function }, 30); });
通过设置 30 毫秒的超时,我们延迟函数的执行,直到调整大小停止至少 30 毫秒。这可确保该函数仅被调用一次。
其他注意事项
如果用户在超时到期之前启动另一个调整大小操作,则先前的超时将被清除,并且将设置新的。这可确保该函数始终在最终调整大小后仅执行一次。
注意: 如果可能,应避免使用全局变量,例如超时。但是,在这种情况下,需要使用超时变量来维护事件处理的状态。
以上是如何在调整大小完成后仅触发一次 jQuery 调整大小事件?的详细内容。更多信息请关注PHP中文网其他相关文章!