主题:  元宵快乐,跪求大侠,指点迷津,永感大德!!!!!!!

COLLBOY

职务:普通成员
等级:1
金币:0.0
发贴:28
#12005/2/23 17:22:32
小弟求教大哥们,假设有5张图片,载入页面的时候先是显示第一张图片,过了2秒以后在同一个位置显示第二张图片,又过了2秒以后又显示第三张图片,以此类推,这样不停的循环下去,我错在哪里呀,或者那位大哥有更好的写法也可以告诉小弟呀,恳请把步骤和代码写得详细和易懂些,小弟感恩不尽!!!
<body onLoad="showimage()">
<script language=javascript><!--
var fadeimages=new Array();
fadeimages[0]="a.jpg";
fadeimages[1]="b.jpg";
fadeimages[2]="c.jpg";
fadeimages[3]="d.jpg";
fadeimages[4]="e.jpg";

var preloadedimages=new Array();
for(p=0;p<fadeimages.length;p++);{
preloadedimages[p]=new Image();
preloadedimages[p].src=fadeimages[p];
}
var pause=2000;

function showimage();{
switch(preloadedimages[p]);
{
case 0:
document.write('<img src="./images/a.jpg">'); break;
case 1:
document.write('<img src="./images/b.jpg">'); break;
case 2:
document.write('<img src="./images/c.jpg">'); break;
case 3:
document.write('<img src="./images/d.jpg">'); break;
case 4:
document.write('<img src="./images/e.jpg">'); break;
}
setTimeout(showimage(),2000) ;
}</script>



缺缺

职务:管理员
等级:8
金币:41.0
发贴:9620
#22005/2/23 17:39:20
像模像样却似是而非,一时不知道怎么说才好...



COLLBOY

职务:普通成员
等级:1
金币:0.0
发贴:28
#32005/2/24 10:59:09
哎,这年头好心的仁兄是越来越少咯,这样下去BBS的命运不长咯



缺缺

职务:管理员
等级:8
金币:41.0
发贴:9620
#42005/2/24 11:20:57
命运不长,也是因为多了你这样浮躁的人

我的回复的意思是:
你的代码没有可改性,因为语法虽然没有错误,但是逻辑上根本是不通的.所以建议你好好考虑一下,重写一份出来.

给你一个思路,定义一个数组,就像你的 fadeimages.然后定义一个全局整形变量,初始值为0,然后修改showimage()函数,使用img.src的方法来切换图片的路径(而不是document.write.后者之后在页面的加载中才可以使用).然后将全局整形变量++,如果超过数组的长度再恢复到初始值0,如此setTimeout