gpt4 book ai didi

javascript - 如何在一个脚本中组合 .with() 和 .resize()

转载 作者:搜寻专家 更新时间:2023-11-01 05:29:39 25 4
gpt4 key购买 nike

你能帮我解决以下问题吗?我有这个有效的 javascript 代码。对于宽度大于 640 像素的屏幕,此代码使一行中的 Bootstrap 列都具有相同的高度。

if($(window).width() >= 640){
$(document).ready(function () {
$(".row").each(function () {
var highestBox = 0;
$(".col", this).each(function () {
if ($(this).height() > highestBox) highestBox = $(this).height();
});
$(".col", this).height(highestBox);
});
});
}

问题

问题是,如果我将窗口大小从小于 640 像素调整为大于 640 像素,我必须刷新页面才能看到更改。我想要一个自动检查窗口大小的脚本。我认为 .resize() 函数可以帮助我解决这个问题,但我不知道如何实现它。

最佳答案

您可以按如下方式实现它。将您的代码放在一个函数中,我们称它为 resizeMe() 。然后:

var rtime,
timeout = false,
waitingTime = 200,
resizeFinished = function () {
if (new Date() - rtime < waitingTime) {
window.setTimeout(resizeFinished, waitingTime);
} else {
timeout = false;
if ($(window).width() >= 640) {
resizeMe();
}
}
};

$(window).resize(function () {
rtime = new Date();
if (timeout === false) {
timeout = true;
window.setTimeout(resizeFinished, waitingTime);
}
}).resize();

使用此函数,您的函数 resizeMe() 在调整大小过程完成时被触发。这样可以确保 resizeMe() 不会在每次鼠标移动时触发,而是仅在达到 waitingTime 时触发(200 毫秒)。这对于性能来说非常重要。 (感谢都市指点)

关于javascript - 如何在一个脚本中组合 .with() 和 .resize(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35100516/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com