<!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">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<head>
<title>jQuery+CSS实现多行文本轮换特效</title>
<style type="text/css">
body{font-size:0.8em;letter-spacing:1px;line-height:1.8em;}
div,h2,p,ul,li{margin:0;padding:0;}
h1{font-size:1em;font-weight:normal;}
h1 a{background:#047;padding:2px 3px;color:#fff;text-decoration:none;}
h1 a:hover{background:#a40000;color:#fff;text-decoration:underline;}
h3{color:#888;font-weight:bold;font-size:1em;margin:1em auto;position:relative;}
h2{background:#a40000;font-size:12px;color:#fff;font-weight:normal;text-align:center;width:100px;height:25px;line-height:25px;margin:0 0 0 20px;}
ul.line,ul.mulitline{width:245px;height:30px;overflow:hidden;background:#eee;margin-bottom:20px;border:2px solid #a40000;}
ul.mulitline{height:260px;}
li{height:30px;text-indent:15px;font-size:12px;line-height:30px;list-style:none;}
</style>
<script src="http://www.lanrenzhijia.com/ajaxjs/jquery.min.js"></script>
<script language="javascript">
$(function(){
//单行应用@Mr.Think
var _wrap=$('ul.line');//定义滚动区域
var _interval=2000;//定义滚动间隙时间
var _moving;//需要清除的动画
_wrap.hover(function(){
clearInterval(_moving);//当鼠标在滚动区域中时,停止滚动
},function(){
_moving=setInterval(function(){
var _field=_wrap.find('li:first');//此变量不可放置于函数起始处,li:first取值是变化的
var _h=_field.height();//取得每次滚动高度
_field.animate({marginTop:-_h+'px'},600,function(){//通过取负margin值,隐藏第一行
_field.css('marginTop',0).appendTo(_wrap);//隐藏后,将该行的margin值置零,并插入到最后,实现无缝滚动
})
},_interval)//滚动间隔时间取决于_interval
}).trigger('mouseleave');//函数载入时,模拟执行mouseleave,即自动滚动
});
$(function(){
//多行应用@Mr.Think
var _wrap=$('ul.mulitline');//定义滚动区域
var _interval=3000;//定义滚动间隙时间
var _moving;//需要清除的动画
_wrap.hover(function(){
clearInterval(_moving);//当鼠标在滚动区域中时,停止滚动
},function(){
_moving=setInterval(function(){
var _field=_wrap.find('li:first');//此变量不可放置于函数起始处,li:first取值是变化的
var _h=_field.height();//取得每次滚动高度
_field.animate({marginTop:-_h+'px'},600,function(){//通过取负margin值,隐藏第一行
_field.css('marginTop',0).appendTo(_wrap);//隐藏后,将该行的margin值置零,并插入到最后,实现无缝滚动
})
},_interval)//滚动间隔时间取决于_interval
}).trigger('mouseleave');//函数载入时,模拟执行mouseleave,即自动滚动
});
</script>
</head>
<body>
<ul class="mulitline">
<li>
<a title="第1行内容" target="_blank" href="#">第1行内容</a></li>
<li>
<a title="第2行内容" target="_blank" href="#">第2行内容</a></li>
<li>
<a title="第3行内容" target="_blank" href="#">第3行内容</a></li>
<li>
<a title="第4行内容" target="_blank" href="#">第4行内容</a></li>
<li>
<a title="第5行内容" target="_blank" href="#">第5行内容</a></li>
<li>
<a title="第6行内容" target="_blank" href="#">第6行内容</a></li>
<li>
<a title="第7行内容" target="_blank" href="#">第7行内容</a></li>
</ul>
</body>
</html>
测试完又改了改。效果还不错,放上去给大家测试测试