javascript为什么会出现这样的问题???请进。。。
我的代码中有这样一段代码:
var w =0, h =0 ;
var iwidth = 480 , iheight = 500;
var image=new Image();
image.src=src;
alert(image.width);
if(image.width> iwidth)
{
var point = image.height/image.width;
w = iwidth;
h= iwidth*point;
if(h> iheight)
{
var p1 = image.width/image.height;
h = iheight;
w = iheight*p1;
}
arr += ' width=\ " ' + w + '\ " height=\ " ' + h + '\ " ' ;
}
---------------------------------
当运行的时候,alert(image.width)语句显示的是0,有时候却能正确显示图片的宽度值。请问这是为什么呢??
------解决方案--------------------帮顶
------解决方案--------------------src 是什么啊
image.src=src; 怎么src没有赋值呢?
-----------------------------------------------
msn:bdbox@hotmail.com
请给我个与您交流的机会
------解决方案--------------------image.src=src;
image.onload =
function()
{
// command go here
}
图片未加载完毕...
------解决方案--------------------image.src=src; 只是指定,还没载入,所以你第一次运行显示0,第二次就能正确显示
换成下面这个:
(function() {img.src =src;})();
------解决方案-------------------- image.src=src 为已经指定目标, 并开始载入...
------解决方案--------------------应该是 image 的 onload 事件里去得到宽度.
只有等图片载入OK后,宽度才有值.不然就是0