有一段代码在除了Firefox之外的所有浏览器(IE6, IE7, Safari3, Safari4, Opera9, Chrome2.0)上运行都正常。我是想在点击图片时输出image对像的宽度
图片的这个地址不是静态图片的地址,而是重定向到另一个静态图片的地址
<img src="http://dufrog.com/test/redirect" onclick="shout(this)">shout 是在head中定义的:
function shout(c){
a = new Image();
a.src = c.src;
alert(a.width);
}当我点击图片时,其它所有浏览器都输出95,只有FireFox输出0。
如果我不在shout函数中创建新对像a, 而是直接输出c.width,那么FireFox会正确输出95.
如果我不用重定向的图片地址,而是直接用静态图片的地址,那么FireFox也会正确输出95.我想知道,是什么原因造成了FireFox输出的不同?
谢谢
图片的这个地址不是静态图片的地址,而是重定向到另一个静态图片的地址
<img src="http://dufrog.com/test/redirect" onclick="shout(this)">shout 是在head中定义的:
function shout(c){
a = new Image();
a.src = c.src;
alert(a.width);
}当我点击图片时,其它所有浏览器都输出95,只有FireFox输出0。
如果我不在shout函数中创建新对像a, 而是直接输出c.width,那么FireFox会正确输出95.
如果我不用重定向的图片地址,而是直接用静态图片的地址,那么FireFox也会正确输出95.我想知道,是什么原因造成了FireFox输出的不同?
谢谢
3.5.1也试过,结果是一样的。
a = new Image();
a.src = c.src;
a.onload=function(){alert(a.width);}
}
function image(obj){
this.obj=obj
this.width=function(){
var w=this.obj.width;
return w;
}
}
function test(obj){
var a=new image(obj);
alert(a.width());
}这样的写法在firefox和ie下都有弹出高度