所以我试图找到图像的高度,然后添加上边距,这使我能够强加一个垂直中心。
我正在运行此代码,在F5刷新上我得到了正确的高度,但在CTRL+F5刷新上它给了我一个小得多的高度。我有点认为这是一个加载/延迟的事情,但我正在使用准备好的文档,所以不太确定发生了什么。我尝试使用 php 函数,但它使网站速度惊人地减慢,所以必须坚持使用 jquery。
你可以在这里看到它的工作原理。 www.mzillustration.com
jQuery(document).ready(function() {
if (jQuery('.imagedisplay').length != 0) {
jQuery('.imagedisplay').each(function(){
var imgheight = jQuery(this).find('img').height();
var topmarg = ((240 - imgheight) / 2) ;
jQuery(this).find('img').css({'margin-top':topmarg+'px'});
});
});
非常感谢任何想法/帮助/解释。 谢谢
最佳答案
onload 和 onready 之间是有区别的。
ready 会等到实际的 DOM 树完成,而 onload 会等到页面上显示的所有内容完成加载。因此,一个解释是,当清除缓存并刷新时,dom 树完成的速度比图像快得多,因此给出了错误的高度。
尝试使用 onload-event 来代替,看看是否会得到不同的结果。
关于javascript - Jquery.height() 使用 F5 或 CTRL+F5 返回不同的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13314058/