通过jquery实现文字上下滚动的效果

简介: 文字上下滚动是经常用到的js效果,这里介绍一种上下渐隐渐出的文字展现效果!

文字上下滚动是经常用到的js效果,这里介绍一种上下渐隐渐出的文字展现效果!


<!DOCTYPE>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>文字滚动</title>
<style type="text/css">
 #sidebar{width:200px; height;500px; overflow:hidden; margin:0 auto; background:#f00; color:#fff;}
 #marquee{width:200px; margin:0;padding:0;}
 #marquee li{width:200px;height:20px; line-height:20px;}
 ul li{list-style:none;}
</style>
</head>
<body>
<div id="sidebar">
 <ul id="marquee" class="marquee spy">
 <li>11111111111111111111111111111</li>
 <li>22222222222222222222222222222</li>
 <li>33333333333333333333333333333</li>
 <li>44444444444444444444444444444</li>
 <li>55555555555555555555555555555</li>
 <li>asdsdssssssssssssssssssdddddd</li>
 <li>ggggggggggggggggggggggggggggg</li>
 <li>xxxxxxxxxxxxxxxxxxxxxxxxxxxxx</li>
 <li>11111111111111111111111111111</li>
 <li>22222222222222222222222222222</li>
 <li>33333333333333333333333333333</li>
 <li>44444444444444444444444444444</li>
 <li>55555555555555555555555555555</li>
 <li>asdsdssssssssssssssssssdddddd</li>
 <li>ggggggggggggggggggggggggggggg</li>
 <li>xxxxxxxxxxxxxxxxxxxxxxxxxxxxx</li>
 </ul>
 </div>
</body>
</html>
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript">
$(function () {
 $('ul.spy').simpleSpy();
});
(function ($) { 
$.fn.simpleSpy = function (limit, interval) {
 limit = limit || 12;//展示数量
 interval = interval || 4000;
 return this.each(function () {
 var $list = $(this),
 items = [],
 currentItem = limit,
 total = 0,
 height = $list.find('> li:first').height();

 $list.find('> li').each(function () {
 items.push('<li>' + $(this).html() + '</li>');
 });
 total = items.length;
 $list.wrap('<div class="spyWrapper" />').parent().css({ height : height * limit });
 $list.find('> li').filter(':gt(' + (limit - 1) + ')').remove();
 function spy() {
 var $insert = $(items[currentItem]).css({
 height : 0,
 opacity : 0,
 display : 'none'
 }).prependTo($list); 
 $list.find('> li:last').animate({ opacity : 0}, 1000, function () {
 $insert.animate({ height : height }, 1000).animate({ opacity : 1 }, 1000);
 $(this).remove();
 });
 currentItem++;
 if (currentItem >= total) {
 currentItem = 0;
 }
 setTimeout(spy, interval)
 }
 spy();
 });
}; 
})(jQuery);
</script>
相关文章
|
11月前
|
JavaScript
基于jQuery的公告无限循环滚动实现代码
基于jQuery的公告无限循环滚动实现代码
52 0
|
JavaScript 开发者
|
JavaScript
jQuery 动态输入文字展示效果
jQuery 动态输入文字展示效果
81 0
|
14天前
|
JavaScript
jQuery实现无缝图片滚动效果
jQuery实现无缝图片滚动效果
52 10
|
11月前
|
JavaScript
jQuery实现大屏滚动播放的效果
jQuery实现大屏滚动播放的效果
51 0
|
11月前
|
JavaScript
jQuery实现消息滚动播放的效果
jQuery实现消息滚动播放的效果
43 0
|
JavaScript 前端开发
jQuery 页面顶部滚动中固定导航栏
jQuery 页面顶部滚动中固定导航栏
37 0
|
前端开发 JavaScript
JQuery——BreakingNews.js新闻滚动效果
BreakingNews.js新闻滚动效果
85 0
|
JavaScript 前端开发 CDN
HTML + jQuery 实现轮播图
HTML + jQuery 实现轮播图
291 0
HTML + jQuery 实现轮播图
|
JavaScript
Jquery实现表格动态增加一行,删除一行(最简洁的代码实现)
Jquery实现表格动态增加一行,删除一行(最简洁的代码实现)
545 0
Jquery实现表格动态增加一行,删除一行(最简洁的代码实现)