jQuery实现带有上下控制按钮的简单多行滚屏效果代码


Posted in Javascript onSeptember 04, 2015

本文实例讲述了jQuery实现带有上下控制按钮的简单多行滚屏效果代码。分享给大家供大家参考。具体如下:

这里使用了jQuery插件来实现最简单的多行文字滚屏效果,还带有上下滚动控制按钮,卷动速度,数值越大,速度越慢(毫秒),滚动的时间间隔是(毫秒),每次滚动的行数,默认为一屏,即父容器高度……

运行效果截图如下:

jQuery实现带有上下控制按钮的简单多行滚屏效果代码

在线演示地址如下:

具体代码如下:

<!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=gb2312" />
<title>用jQuery实现最简单的滚屏效果,加了上下按钮</title>
<style type="text/css">
ul,li{margin:0;padding:0}
#scrollDiv{width:300px;height:100px;min-height:25px;line-height:25px;border:#ccc 1px solid;overflow:hidden}
#scrollDiv li{height:25px;padding-left:10px;}
</style>
<script type="text/javascript" src="jquery-1.6.2.min.js"></script>
<script type="text/javascript">
(function($){
$.fn.extend({
 Scroll:function(opt,callback){
 //参数初始化
 if(!opt) var opt={};
 var _btnUp = $("#"+ opt.up);//Shawphy:向上按钮
 var _btnDown = $("#"+ opt.down);//Shawphy:向下按钮
 var timerID;
 var _this=this.eq(0).find("ul:first");
 var lineH=_this.find("li:first").height(), //获取行高
  line=opt.line?parseInt(opt.line,10):parseInt(this.height()/lineH,10), //每次滚动的行数,默认为一屏,即父容器高度
  speed=opt.speed?parseInt(opt.speed,10):500; //卷动速度,数值越大,速度越慢(毫秒)
  timer=opt.timer //?parseInt(opt.timer,10):3000; //滚动的时间间隔(毫秒)
 if(line==0) line=1;
 var upHeight=0-line*lineH;
 //滚动函数
 var scrollUp=function(){
  _btnUp.unbind("click",scrollUp); //Shawphy:取消向上按钮的函数绑定
  _this.animate({
  marginTop:upHeight
  },speed,function(){
  for(i=1;i<=line;i++){
   _this.find("li:first").appendTo(_this);
  }
  _this.css({marginTop:0});
  _btnUp.bind("click",scrollUp); //Shawphy:绑定向上按钮的点击事件
  });
 }
 //Shawphy:向下翻页函数
 var scrollDown=function(){
  _btnDown.unbind("click",scrollDown);
  for(i=1;i<=line;i++){
  _this.find("li:last").show().prependTo(_this);
  }
  _this.css({marginTop:upHeight});
  _this.animate({
  marginTop:0
  },speed,function(){
  _btnDown.bind("click",scrollDown);
  });
 }
 //Shawphy:自动播放
 var autoPlay = function(){
  if(timer)timerID = window.setInterval(scrollUp,timer);
 };
 var autoStop = function(){
  if(timer)window.clearInterval(timerID);
 };
  //鼠标事件绑定
 _this.hover(autoStop,autoPlay).mouseout();
 _btnUp.css("cursor","pointer").click( scrollUp ).hover(autoStop,autoPlay);//Shawphy:向上向下鼠标事件绑定
 _btnDown.css("cursor","pointer").click( scrollDown ).hover(autoStop,autoPlay);
 } 
})
})(jQuery);
$(document).ready(function(){
 $("#scrollDiv").Scroll({line:4,speed:500,timer:3000,up:"btn1",down:"btn2"});
});
</script>
</head>
<body>
<p>多行滚动演示:</p>
<div id="scrollDiv">
<ul>
<li><a href="" target="_blank">信言企业公司建站程序 v1</a></li>
<li><a href="" target="_blank">EPffms 环保时代ASP家庭财务管理系统 v5.0</a></li>
<li><a href="" target="_blank">jQuery两幅图像动画叠加的效果</a></li>
<li><a href="" target="_blank">Android 滑动提示、菜单及列表等小程序源码</a></li>
<li><a href="" target="_blank">Maxcms 马克斯电影视频系统 v4.0</a></li>
<li><a href="" target="_blank">DedeCms v5.7 GBK</a></li>
<li><a href="" target="_blank">DedeCms v5.7 UTF-8</a></li>
<li><a href="" target="_blank">Piwik PHP站点流量统计系统 v1.2.1</a></li>
</ul>
</div>
<span id="btn2">向上</span>
<span id="btn1">向下</span>
</body>
</html>

希望本文所述对大家的jquery程序设计有所帮助。

Javascript 相关文章推荐
javascript 打开页面window.location和window.open的区别
Mar 17 Javascript
一款js和css代码压缩工具[附JAVA环境配置方法]
Apr 16 Javascript
基于jquery的超简单上下翻
Apr 20 Javascript
escape函数解决js中ajax传递中文出现乱码问题
Oct 30 Javascript
jQuery实现tag便签去重效果的方法
Jan 20 Javascript
JavaScript编写一个简易购物车功能
Sep 17 Javascript
AngularJS中如何使用echart插件示例详解
Oct 26 Javascript
利用JS动态生成隔行换色HTML表格的两种方法
Oct 09 Javascript
ligerUI的ligerDialog关闭刷新的方法
Sep 27 Javascript
JS对日期操作封装代码实例
Nov 08 Javascript
js布局实现单选按钮控件
Jan 17 Javascript
jQuery实现简易QQ聊天框
Feb 10 jQuery
JS右下角广告窗口代码(可收缩、展开及关闭)
Sep 04 #Javascript
js实现网站最上边可关闭的浮动广告条代码
Sep 04 #Javascript
jquery实现浮动在网页右下角的彩票开奖公告窗口代码
Sep 04 #Javascript
jquery实现的Accordion折叠面板效果代码
Sep 02 #Javascript
jQuery实现带延迟效果的滑动菜单代码
Sep 02 #Javascript
jquery实现顶部向右伸缩的导航区域代码
Sep 02 #Javascript
jquery实现的Banner广告收缩效果代码
Sep 02 #Javascript
You might like
thinkphp中空模板与空模块的用法实例
2014/11/26 PHP
2017年最好用的9个php开发工具推荐(超好用)
2017/10/23 PHP
PHP读取XML文件的方法实例总结【DOMDocument及simplexml方法】
2019/09/10 PHP
一个JQuery写的点击上下滚动的小例子
2011/08/27 Javascript
快速解决jquery之get缓存问题的最简单方法介绍
2013/12/19 Javascript
用jquery模仿的a的title属性的例子
2014/10/22 Javascript
jquery简单实现图片切换效果的方法
2015/05/12 Javascript
全面接触神奇的Bootstrap导航条实战篇
2016/08/01 Javascript
vue.js 初体验之Chrome 插件开发实录
2017/05/13 Javascript
详解vue项目优化之按需加载组件-使用webpack require.ensure
2017/06/13 Javascript
JavaScript运行原理分析
2018/02/09 Javascript
jQuery实现的滑块滑动导航效果示例
2018/06/04 jQuery
angular 实时监听input框value值的变化触发函数方法
2018/08/31 Javascript
Node.js之readline模块的使用详解
2019/03/25 Javascript
el-select 下拉框多选实现全选的实现
2019/08/02 Javascript
Python实现获取本地及远程图片大小的方法示例
2018/07/21 Python
python+Splinter实现12306抢票功能
2018/09/25 Python
matplotlib实现区域颜色填充
2019/03/18 Python
Python:二维列表下标互换方式(矩阵转置)
2019/12/02 Python
pytorch数据预处理错误的解决
2020/02/20 Python
使用Python构造hive insert语句说明
2020/06/06 Python
python与pycharm有何区别
2020/07/01 Python
Python如何使用ConfigParser读取配置文件
2020/11/12 Python
利用Python函数实现一个万历表完整示例
2021/01/23 Python
细说CSS3中box属性中的overflow-x属性和overflow-y属性值的效果
2014/07/21 HTML / CSS
canvas绘制树形结构可视图形的实现
2020/04/03 HTML / CSS
巴西24小时在线药房:Drogasil
2020/06/20 全球购物
C语言面试题
2013/05/19 面试题
2014县委书记党的群众路线教育实践活动对照检查材料思想汇报
2014/09/22 职场文书
2015年文秘个人工作总结
2015/10/14 职场文书
2016年度师德标兵先进事迹材料
2016/02/26 职场文书
2019年XX公司的晨会制度及流程!
2019/07/23 职场文书
MySQL中distinct与group by之间的性能进行比较
2021/05/26 MySQL
你知道Java Spring的两种事务吗
2022/03/16 Java/Android
Java 超详细讲解hashCode方法
2022/04/07 Java/Android
解决spring.thymeleaf.cache=false不起作用的问题
2022/06/10 Java/Android