|
查看: 1818|回复: 5
|
Chrome image onload
[复制链接]
|
|
|
我想用javascrip來控制照片的大小,代碼如下:JSP代碼:
<img src="<s:property value="url" />"></img>
Javascript:
function DrawImage(ImgD,h,w){ var image=new Image(); var iwidth=w; var iheight=h; image.src=ImgD.src; if(image.width>0 && image.height>0){ 計算比率... }}
不過Google Chrome有時候照片還沒load完它就執行onload,導致image.width不大過0所以沒控制到圖片的大小..請問這問題要如何解決?IE7 和 FF 都沒這個問題. |
|
|
|
|
|
|
|
|
|
|
发表于 10-7-2010 11:08 PM
|
显示全部楼层
本帖最后由 megablue 于 10-7-2010 11:19 PM 编辑
可以用
- function checkimage(image){ if(image.complete){ if( !(typeof image.naturalWidth != "undefined" && image.naturalWidth== 0) ){ return true; } } return false;}
复制代码 |
|
|
|
|
|
|
|
|
|
|
发表于 11-7-2010 12:07 AM
|
显示全部楼层
onload好像是IE的办法,其他浏览器是用complete的,试看这个:
if (image.complete)
{....}
else
{
image.onload=function()
{....};
} |
|
|
|
|
|
|
|
|
|
|
发表于 11-7-2010 02:06 AM
|
显示全部楼层
onload好像是IE的办法,其他浏览器是用complete的,试看这个:
if (image.complete)
{.... ...
y小叶y 发表于 11-7-2010 12:07 AM 
.complete 只能告诉你那个image element有没有成功被初始化尽管未能成功load出image. |
|
|
|
|
|
|
|
|
|
|
发表于 11-7-2010 02:41 AM
|
显示全部楼层
.complete 只能告诉你那个image element有没有成功被初始化尽管未能成功load出image.
megablue 发表于 11-7-2010 02:06 AM  原來,謝謝指教 |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 11-7-2010 02:04 PM
|
显示全部楼层
|
那要如何才能讓chrome確保圖片完全load完才執行resize T.T.. |
|
|
|
|
|
|
|
|
| |
本周最热论坛帖子
|