我有以下内容:
var offset = {top: target.offset().top + target.height() + 3,
left: target.offset().left};
target.offset(offset);
这发生在$(document).ready(..)
但是,在chrome中,目标对象的位置没有适当的高度。当我放置一个alert(..)
来显示实际高度时,我看到了原因 - target.offset().top
返回的内容少于预期,因为此时仍未加载图像(警报阻止加载页面和这变得可见了。
我通过在图片周围指定height
的明确<div>
来修复此问题,但有更好的方法吗?
答案 0 :(得分:2)
而不是$(document).ready(..)
,请使用$(window).load(...)
:)
在完成图像加载之后,窗口onload
事件才会发生,因此这就是您在这些情况下的所需。