我正在使用.resize()
为响应登录页重新计算一些<div>
和元素。但它似乎不准确,因为当我快速调整窗口大小时,每个元素的位置都不正确。如果我调整大小缓慢而平静,那么一切都很好。.resize()
的发射速度似乎不够快,以至于错过了一些计算。
我的代码没有什么特别之处:
var faktor = 1014/515;
$(window).resize(function() {
if($(window).width() <= 1015 && $(window).width() >= 800) {
var w = $(window).width();
var h = w/faktor;
$('#modul').css({'width': w, 'height': h});
$('#footer').css('width', w);
$('#headerlinks').css('width', $(window).width()-507);
}
if($(window).width() <= 801) {
}
});
提前感谢!
试着用超时来限制一下,看看它是好是坏:
(function () {
var timeoutResize;
$(window).resize(function () {
clearTimeout(timeoutResize);
timeoutResize = setTimeout(function () {
if ($(window).width() <= 1015 && $(window).width() >= 800) {
var w = $(window).width();
var h = w / faktor;
$('#modul').css({
'width': w,
'height': h
});
$('#footer').css('width', w);
$('#headerlinks').css('width', $(window).width() - 507);
}
if ($(window).width() <= 801) {
}
}, 50);
});
}());