jQuery调整大小()无法正常工作

问题描述:

我正在使用.resize()重新计算某个响应式登录页面的某些<div>和元素。但它似乎并不准确,因为当我快速调整窗口大小时,每个元素的位置都不正确。如果我调整缓慢而平静,那么一切都很好。看起来.resize()没有“足够快”,以至于有些计算错过了。jQuery调整大小()无法正常工作

我的代码有没有什么特别的:

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

    }); 
}()); 
+0

应该是一个很好的解决方法,但对我来说不工作,要么!不知道为什么。 – supersize

+0

你能提供在线链接来测试吗? –