主题:  大家看看这段JS代码,如何让它循环呢!

康夫

职务:普通成员
等级:5
金币:3.0
发贴:3311
注册:2002/8/7 1:00:31
#12003/12/25 14:25:11
这是一段让页面滚动的代码,但是只能滚动一次,大家帮忙看看,如何让它循环滚动呢?
有时间的朋友帮我讲讲这段代码的意思,谢谢!

<SCRIPT language=javascript>
<!-- //
var n=0;
var docwidth=1000;
var step=1;

function scrolling(){
window.scroll(n+=step,0);
if(n>docwidth||n<0){
step=0-step;
}
move()
}

function move(){
window.setTimeout("scrolling()",10);
}

//-->
</SCRIPT>

<BODY onload=move()>



=ridincal=

职务:管理员
等级:7
金币:20.0
发贴:5886
注册:2004/1/13 11:47:04
#22003/12/25 14:47:17

[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]



康夫

职务:普通成员
等级:5
金币:3.0
发贴:3311
注册:2002/8/7 1:00:31
#32003/12/27 9:20:03
ridincal兄:
  你给的代码不会循环啊,滚动到底就停了。或者哪里有这方面的详细资料能否告知一声。



康夫

职务:普通成员
等级:5
金币:3.0
发贴:3311
注册:2002/8/7 1:00:31
#42003/12/27 9:21:23
原来想用<marquee>标签做的,可是不知道如何让它无间断的滚动?



布鲁斯狼

职务:普通成员
等级:2
金币:11.0
发贴:377
注册:2003/8/5 10:27:27
#52003/12/27 9:49:58

[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]



junx

职务:普通成员
等级:1
金币:0.0
发贴:10
注册:2003/12/31 19:33:22
#62003/12/31 20:22:28
setInterval!

其实楼主的代码就一处有问题,就是用了:
window.setTimeout("scrolling()",10);

这是不对的!setTimeout只调用一次,如果你用它来调用函数自己,可以实现递归调用,可实现你要求的功能;

setInterval是专门设计用来实现自动循环调用的,所以改成:
window.setInterval("scrolling()",10);

就好了!



康夫

职务:普通成员
等级:5
金币:3.0
发贴:3311
注册:2002/8/7 1:00:31
#72004/1/1 16:11:54
谢啦!cnbruce兄的代码我改的好惨啊



康夫

职务:普通成员
等级:5
金币:3.0
发贴:3311
注册:2002/8/7 1:00:31
#82004/1/7 16:53:33
  为什么改成“setInterval”后,一访问IE就没响应,不只我一台电脑有这个现象。

  随便问个问题我的IE一打开含有REAL格式的视频网页就会没响应,是什么原因啊,如何解决?MEDIAPLAYER的没有这个现象,谢谢!