主题:  代码的问题

luqiong

职务:普通成员
等级:1
金币:0.0
发贴:18
#12005/3/31 9:53:16
大家帮我看看,下面的状态栏代码为什么会和时间线里的自动播放有冲突啊,点了
自动播放就不能实现状态栏的变化,该怎么改呢?
<script language="javascript">
<!--
var speed = 10
var pause = 2000
var timerID = null
var bannerRunning = false
var ar = new Array()
ar[0] = " 网 页 特 效 站 欢 迎 你 的 光 临"
ar[1] = " 如 果 你 有 什 么 好 的 建 议 或 意 见 , 请 与 我 联 系"
ar[2] = " 你 的 支 持 与 信 任 是 本 站 发 展 的 第 一 动 力"
ar[3] = " 再 次 感 谢 你 的 光 临 与 合 作 , 谢 谢"
var message = 0
var state = ""
clearState()
function stopBanner()
{
if (bannerRunning)
clearTimeout(timerID)
bannerRunning = false
}
function startBanner()
{
stopBanner()
showBanner()
}
function clearState()
{
state = ""
for (var i = 0; i < ar[message].length; ++i)
{
state += "0"
}
}
function showBanner()
{
if (getString())
{
message++
if (ar.length <= message)
message = 0
clearState()
timerID = setTimeout("showBanner()", pause)
bannerRunning = true
}
else
{
var str = ""
for (var j = 0; j < state.length; ++j)
{
str += (state.charAt(j) == "1" ? ar[message].charAt(j) : ""
}
window.status = str
timerID = setTimeout("showBanner()", speed)
bannerRunning = true
}
}
function getString()
{
var full = true
for (var j = 0; j < state.length; ++j)
{
if (state.charAt(j) == 0)
full = false
}
if (full)
return true
while (1)
{
var num = getRandom(ar[message].length)
if (state.charAt(num) == "0"
break
}
state = state.substring(0, num) + "1" + state.substring(num + 1, state.length)
return false
}
function getRandom(max)
{
return Math.round((max - 1) * Math.random())
}
// -->
</script>
<body bgcolor="#fef4d9" onload="startBanner()">