主题:  请问!

天意 | 5D荣誉斑竹

职务:普通成员
等级:5
金币:10.0
发贴:3467
注册:2001/10/30 16:33:25
#12002/4/8 23:16:39
请看这个页面,源文件中哪儿是控制从下往上滚动的。我想让它自右向左滚动,如何做?先谢!



5D荣誉斑竹

职务:普通成员
等级:5
金币:10.0
发贴:3292
注册:2001/5/24 10:01:29
#22002/4/9 12:06:08
自己重写一个



天意 | 5D荣誉斑竹

职务:普通成员
等级:5
金币:10.0
发贴:3467
注册:2001/10/30 16:33:25
#32002/4/9 12:24:27



=ridincal=

职务:管理员
等级:7
金币:20.0
发贴:5886
注册:2004/1/13 11:47:04
#42002/4/9 12:53:24
打不开连接,我猜想你说的是不是marquee的direction属性啊?



天意 | 5D荣誉斑竹

职务:普通成员
等级:5
金币:10.0
发贴:3467
注册:2001/10/30 16:33:25
#52002/4/9 13:08:18
这个可以打开吗?右边在IFRAME里滚动的页面就是顶楼那个。帮我看看?



=ridincal=

职务:管理员
等级:7
金币:20.0
发贴:5886
注册:2004/1/13 11:47:04
#62002/4/9 13:26:24
代码在http://www.leye.com.cn/aaa/mainlib.htm中。
关键是三个相互调用的setTimeout循环设置当前的可见图层:
function movea(){
document.main.document.first.visibility='show'
document.main.document.second.visibility='hide'
document.main.document.third.visibility='hide'
setTimeout("moveb()",8000);
}
function moveb(){
document.main.document.first.visibility='hide'
document.main.document.second.visibility='show'
document.main.document.third.visibility='hide'
setTimeout("movec()",8000);
}
function movec(){
document.main.document.first.visibility='hide'
document.main.document.second.visibility='hide'
document.main.document.third.visibility='show'
setTimeout("movea()",8000);
}
然后是在定时器中设置当前可见图层的style: pixelTop
所以,将pixelTop改为pixelLeft就可以实现你要的效果。

编辑历史:[这消息被ridincal编辑过(编辑时间2002-04-09 19:54:04)]
[这消息被ridincal编辑过(编辑时间2002-04-09 19:54:29)]


5D荣誉斑竹

职务:普通成员
等级:5
金币:10.0
发贴:3292
注册:2001/5/24 10:01:29
#72002/4/9 17:10:19
楼上的,能说的详细点吗?



=ridincal=

职务:管理员
等级:7
金币:20.0
发贴:5886
注册:2004/1/13 11:47:04
#82002/4/9 19:49:46
定义三个图层,每隔8秒隐藏其中两个图层,而显示一个。
然后,看这两个函数:
function move3(whichdiv){
tdiv=eval(whichdiv)
if (tdiv.style.pixelTop>0&&tdiv.style.pixelTop<=5){
tdiv.style.pixelTop=0
setTimeout("move3(tdiv)",5000)
setTimeout("move4(second2)",5000)
return
}
if (tdiv.style.pixelTop>=tdiv.offsetHeight*-1){
tdiv.style.pixelTop-=5
setTimeout("move3(tdiv)",100)
}
else{
tdiv.style.pixelTop=scrollerheight
tdiv.innerHTML=messages[i]

if (i==messages.length-1)
i=0
else
i++
}
}
function move4(whichdiv){
tdiv2=eval(whichdiv)
if (tdiv2.style.pixelTop>0&&tdiv2.style.pixelTop<=5){
tdiv2.style.pixelTop=0
setTimeout("move4(tdiv2)",5000)
setTimeout("move3(first2)",5000)
return
}
if (tdiv2.style.pixelTop>=tdiv2.offsetHeight*-1){
tdiv2.style.pixelTop-=5
setTimeout("move4(second2)",100)
}
else{
tdiv2.style.pixelTop=scrollerheight
tdiv2.innerHTML=messages[i]

if (i==messages.length-1)
i=0
else
i++
}
通过循环设置图层的style.pixelTop属性和下一个显示的图层的innerHTML来完成翻动和循环显示Message。

编辑历史:[这消息被ridincal编辑过(编辑时间2002-04-09 19:50:45)]
[这消息被ridincal编辑过(编辑时间2002-04-09 19:52:05)]


=ridincal=

职务:管理员
等级:7
金币:20.0
发贴:5886
注册:2004/1/13 11:47:04
#92002/4/17 0:03:31



5D荣誉斑竹

职务:普通成员
等级:5
金币:10.0
发贴:3292
注册:2001/5/24 10:01:29
#102002/4/17 17:17:41
这个程序写的太繁了吧。。。

这个思路怎样?
用一个层移动,每一段设置停一下,移动到尾部的时候,将层复制,连起来



5D限制级

职务:普通成员
等级:6
金币:10.0
发贴:4970
注册:2001/8/16 14:52:34
#112002/4/17 17:36:27
我说啊
写这么段代码实在费神 拿来用还行 提高读程序能力也行
想法是好的 实现的方法是多的



=ridincal=

职务:管理员
等级:7
金币:20.0
发贴:5886
注册:2004/1/13 11:47:04
#122002/4/17 18:20:58
hve,你的思路不错,但是横向滚动时,只用一个图层,那两个Message之间的衔接怎么办呢?

编辑历史:[这消息被ridincal编辑过(编辑时间2002-04-17 18:21:36)]


SatanZero

职务:普通成员
等级:1
金币:1.0
发贴:137
注册:2002/5/5 17:04:45
#132002/5/5 18:36:31
用frontpageXP的字幕就可以实现!