JQuery:完成时捕获 Resize 事件
窗口大小调整过程中会不断触发 jQuery resize 事件,导致性能问题。为了解决这个问题,我们的目标是仅在调整大小结束后调用函数。
使用间隔操作的解决方案:
根据 thejh 的建议,我们可以利用 setInterval 函数定期检查浏览器是否已完成调整大小。一旦检测到不活动,它就可以清除间隔并调用所需的函数:
var resizeTimer; $(window).resize(function() { // Reset the resize timer if it exists if (resizeTimer) clearTimeout(resizeTimer); // Set a new resize timer resizeTimer = setTimeout(function() { // Call the desired function here }, 30); });
在此解决方案中,我们使用clearTimeout 来取消任何现有的调整大小计时器。然后我们设置一个新的定时器,间隔很短(本例中为 30 毫秒)。一旦计时器过去,我们就知道调整大小已经停止,我们就可以执行所需的函数。
以上是如何在 jQuery 中窗口调整大小完成后触发函数?的详细内容。更多信息请关注PHP中文网其他相关文章!