在jQuery中显示隐藏的DOM元素之前调整其大小

在jQuery中显示隐藏的DOM元素之前调整其大小,jquery,dom,resize,hidden,Jquery,Dom,Resize,Hidden,我在我们建立的很多网站上都遇到了这个问题。基本上,全球范围是: 网站应适应所有不同的窗口大小 用户使用键盘或鼠标在其中导航 页面的所有不同部分都已存在(隐藏)或通过Ajax加载(无url更改) 某些元素(如图像)需要保持原始纵横比 某些元素(如段落)具有固定的宽度,但没有已知的高度(自动) 加载网站时,只有第一部分可见 现在,我试过这个: 在init上保存所有元素的原始宽度和高度:这将失败,因为未加载图像 加载时保存所有图元的原始宽度和高度:这会增加不需要的延迟 混合使用两种第一种解决方案

我在我们建立的很多网站上都遇到了这个问题。基本上,全球范围是:

  • 网站应适应所有不同的窗口大小
  • 用户使用键盘或鼠标在其中导航
  • 页面的所有不同部分都已存在(隐藏)或通过Ajax加载(无url更改)
  • 某些元素(如图像)需要保持原始纵横比
  • 某些元素(如段落)具有固定的宽度,但没有已知的高度(自动)
  • 加载网站时,只有第一部分可见
现在,我试过这个:

  • 在init上保存所有元素的原始宽度和高度:这将失败,因为未加载图像
  • 加载时保存所有图元的原始宽度和高度:这会增加不需要的延迟
  • 混合使用两种第一种解决方案,在init上使用文本,在load上使用图像:这可以按照需要工作,但前提是元素可见并且其所有父元素都可见
  • 在调整大小时,显示全部、调整大小、隐藏需要隐藏的内容。。。这落后于所有浏览器
  • 调整大小停止时(上次调整大小事件后50毫秒):这将阻止所有单个调整大小事件上的动画流
所以,这就引出了问题的标题


有人对这种情况有什么看法吗?

你能发布一些代码或更好地解释你的问题吗?我希望能,问题中的代码出现在太多地方了。问题实际上是试图设置某些DOM元素的大小,而它们是隐藏的,在进行实际调整大小之前,我必须知道它们的原始(浏览器计算的)大小