目测不会有问题,也不会你想要的效果
if (s==3){t=0;}这里你写错了吧,应该是s=0;吧。obj.src=ImgName[t]; ??乱七八糟
你的代码执行流程:
1、obj.src='/images/loading.gif'; 赋值后,就等着小图标onload
2、小图标加载完成时,把图片地址改成当前图片地址,等图片onload(不会有你要的效果,小图标被替换了,缓存、网速快的话瞬间完事)
3、图片onload时,又修改地址为自身,不会触发onload了
我猜IE栈溢出是第3步的问题,改了图片地址就触发onload,不知道是什么版本IE
还有啊,图片地址用数组不好么,还搞个类多麻烦
var strimg=[];
strimg[0]="/upfile/2013-11/sfsfsf.jpg";
strimg[1]="/upfile/2013-11/sfsdfsdfsdf.jpg";
strimg[2]="/upfile/2013-11/sdfsdfsd.jpg";
要图片加载完毕前,小图标还在转的话,不要轻易覆盖掉小图标的地址,另外建个IMG加载图片
var s=0;
function imgshow(obj){
sobj.src='/images/loading.gif';
var img=new Image();
img.src=strimg[s];
img.onload=function(){
obj.src=img.src;//图片加载完毕后再显示
}
}