网上不少信息,但是写的比较杂乱,不够精简,不过主题方法都一样,一下是自己理解后自行的一些测试代码
大家可以参考一个网址http://www.cnblogs.com/rubylouvre/archive/2009/10/01/1577219.html写的不错,基本原理都一样
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>scroll</title>
</head>
<body>
<div id="abcde" style="height:100px; overflow:scroll;">
<div id="abcde1">
<dl>
<dt>1231231232</dt>
<dd>1231231232</dd>
<dd>1231231232</dd>
<dd>1231231232</dd>
<dd>1231231232</dd>
<dd>1231231232</dd>
<dd>1231231232</dd>
<dd>1231231232</dd>
<dd>1231231232</dd>
<dd>1231231232</dd>
<dd>1231231232</dd>
<dd>1231231232</dd>
<dd>1231231232</dd>
<dd>1231231232</dd>
<dd>1231231232</dd>
<dd>1231231232</dd>
<dd>1231231232</dd>
<dd>1231231232</dd>
<dd>1231231232</dd>
</dl>
</div>
<div id="abcde2"></div>
</div>
</body>
</html>
<script type="text/javascript" language="javascript">
var speed = 10;
var abcd = document.getElementByIdx_x_x('abcde');
var abcd1 = document.getElementByIdx_x_x('abcde1');
var abcd2 = document.getElementByIdx_x_x('abcde2');
//获取id元素对象
abcd2.innerHTML=abcd1.innerHTML;
//建立两个同样内容元素,防止scrolltop---带有overflow属性为外部,其内部为内容向上滚动溢出部分为scrolltop,中出现空白衔接不上,scrllHeight为整体高度,offsetHeight为overflow设定后高度
function scrollbacd(){
if(abcd2.offsetHeight - abcd.scrollTop <= 0){
abcd.scrollTop -= abcd1.offsetHeight;
}else{
abcd.scrollTop++;
}
}
var iterm = setInterval( scrollbacd , speed );//设定定时器,每隔speed毫秒进行溢出scrollbacd函数请求
abcd.onmouseover = function(){ clearInterval( iterm );}//鼠标悬停是触发 -- 清除定时器设定
abcd.onmouseout = function(){ iterm = setInterval( scrollbacd , speed );}
</script>