我的图像已加载完毕,但其高度和宽度尚未更新。什么时候发生?
|
我正在使用一个jQuery插件,该插件会在页面上的所有图片均加载完毕后调用回调。它检查
imageObject.complete
属性,并将处理程序绑定到load
和error
事件,以确定何时完成图像加载。
这很好用,但是我遇到的问题是,即使图像被认为已加载,当我检查图像或其包含div
元素的height
和width
属性时,尺寸尚未更新。
这是一个例子:
http://jsfiddle.net/RtnVx/12/
在尝试访问height
和width
尺寸之前,如何确保已调整容纳元素的大小以适合图像?
编辑1:我清理并注释了jsfiddle中的代码,以使示例更易于理解。
编辑2:必须有一个基于缓存的竞争条件或差异,因为当我从另一台计算机上运行代码时,它可以正常工作(即,最高边距计算正确),实际上是不好的,因为它不一致。 Chrome,FWIW中的不一致现象更加明显。
另外,要明确一点,目标不是每次加载图像时都调用ѭ8。相反,应在通过AJAXload
调用加载所有图像之后才一次调用init
。
没有找到相关结果
已邀请:
1 个回复
到街客核
,并将该长度存储在
属性中,并存储一个变量以保持加载的数量。 在每个
上绑定
和
事件,以更新已加载图像的计数。 如果已加载/错误图像的数量达到图像总数,请致电
,直到所有宽度均大于零,然后触发
。