-1

我有一个非常适合我的垂直滚动脚本,但问题是它会在一段时间后停止。如何修改脚本,使其一次又一次地从上到下无限滚动?
这是代码:

<html>
<head>
<style type="text/css">
.frame {
font:12px arial;
width:200;
height:300;
border:none;
overflow: hidden;
border:1px solid black;
padding:5;
}
</style>
<script language="javascript">
i = 0
var speed = 1
function scroll() {
i = i + speed
var div = document.getElementById("news")
div.scrollTop = i
if (i > div.scrollHeight - 160) {i = 0}
t1=setTimeout("scroll()",100)
}
</script>
</head>
<body onload="scroll()">
<div class="frame" id="news" onmouseover="clearTimeout(t1)" onmouseout="scroll()" >
Some Text text 1<br>
Some Text text 2<br>
Some Text text 3<br>
Some Text text 4<br>
Some Text text 5<br>
Some Text text 6<br>
Some Text text 7<br>
Some Text text 8<br>
Some Text text 9<br>
Some Text text 10<br>
Some Text text 11<br>
Some Text text 12<br>
Some Text text 13<br>
Some Text text 14<br>
Some Text text 15<br>
Some Text text 16<br>
Some Text text 17<br>
Some Text text 18<br>
Some Text text 19<br>
Some Text text 20<br>
Some Text text 21<br>
</div>
</body>
</html>
4

2 回答 2

1

它实际上并没有停止。
尝试将 if() 条件更新为

if (i > div.scrollHeight - 300) {i = 0}
于 2012-12-27T16:55:46.940 回答
0

你的问题是你只有在 scrollHeight 减去 160 之后才重置它

它应该是 scrollHeight - divHeight

于 2012-12-27T16:56:12.757 回答