基于jQuery的左右滚动实现代码


Posted in Javascript onDecember 03, 2010

两个div。
一个div为固定宽度 。在次div中内嵌一个div ,这个为数据列。

<div class=”box”> 
<div class=”box-li”> 
<ul> 
<li>数据2</li> 
<li>数据2</li> 
<li>数据2</li> 
<li>数据2</li> 
<li>数据2</li> 
<li>数据2</li> 
<ul> 
</div> 
<div> 
<span id=”next”>向右移动</span> 
<span id=”pre”>向左移动</span> 
样式表 
.box{ 
float: left; 
height: 93px; 
width: 560px; 
left:0px; 
white-space:nowrap; 
overflow:hidden; 
position:relative /* 不加次属性在ie7中无法隐藏内容*/ 
} 
.box-li{ 
float: left; 
height: 90px; 
left:0px; 
position:relative; 
white-space:nowrap; 
clear: both; 
} 
.box-li ul{ 
width:100000px; /* 不加次数据IE中数据会自动换行*/ 
white-space:nowrap; 
} 
.box-li li{ 
margin-left:0px; 
margin-right:0px; 
float: left; 
text-align:center; 
width: 92px; 
} 
$(function () { 
var $cur = 1; //初始化显示的版面 
var $i= 6; //每版显示数 
var $len = $('.box-li>ul>li').length; //计算列表总长度(个数) 
var $pagecount = Math.ceil($len / $i); //计算展示版面数量 
var $showbox = $('.box'); 
var $w = $('.box').width(); //取得展示区外围宽度 
var $pre = $('#pre'); 
var $next = $('#next'); 
//向前滚动 
$pre.click(function () { 
if (!$showbox.is(':animated')) { //判断展示区是否动画 
if ($cur == 1) { //在第一个版面时,再向前滚动无动作 } 
else { 
$showbox.animate({ 
left: '+=' + $w 
}, 600); //改变left值,切换显示版面 
$cur--; //版面累减 
} 
} 
}); 
//向后滚动 
$next.click(function () { 
if (!$showbox.is(':animated')) { //判断展示区是否动画 
if ($cur == $pagecount) { //在最后一个版面时,再向后滚动无动作 } 
else { 
$showbox.animate({ 
left: '-=' + $w 
}, 600); //改变left值,切换显示版面 
$cur++; //版面数累加 
} 
} 
}); 
});
Javascript 相关文章推荐
一个很酷的拖动层的js类,兼容IE及Firefox
Jun 23 Javascript
jquery插件之信息弹出框showInfoDialog(成功/错误/警告/通知/背景遮罩)
Jan 09 Javascript
jquery下拉select控件操作方法分享(jquery操作select)
Mar 25 Javascript
js通过iframe加载外部网页的实现代码
Apr 05 Javascript
表单验证插件Validation应用的实例讲解
Oct 10 Javascript
详解Javacript和AngularJS中的Promises
Feb 09 Javascript
详解angularjs利用ui-route异步加载组件
May 21 Javascript
JS基于贪心算法解决背包问题示例
Nov 27 Javascript
详解Vue快速零配置的打包工具——parcel
Jan 16 Javascript
Vue 路由切换时页面内容没有重新加载的解决方法
Sep 01 Javascript
vue-loader中引入模板预处理器的实现
Sep 04 Javascript
js实现点击烟花特效
Oct 14 Javascript
基于jquery的finkyUI插件与Ajax实现页面数据加载功能
Dec 03 #Javascript
Web开发者必备的12款超赞jQuery插件
Dec 03 #Javascript
jQuery学习笔记[1] jQuery中的DOM操作
Dec 03 #Javascript
浅析jQuery的链式调用之each函数
Dec 03 #Javascript
jQuery的链式调用浅析
Dec 03 #Javascript
加速IE的Javascript document输出的方法
Dec 02 #Javascript
关于Ext中form移除textfield方法:hide(),setVisible(false),remove()
Dec 02 #Javascript
You might like
一个简单的PHP&amp;MYSQL留言板源码
2020/07/19 PHP
phpmail类发送邮件函数代码
2012/02/20 PHP
完美解决:Apache启动问题―(OS 10022)提供了一个无效的参数
2013/06/08 PHP
php实现简单文件下载的方法
2015/01/30 PHP
php中preg_replace_callback函数简单用法示例
2016/07/21 PHP
PHP7 新特性详细介绍
2016/09/06 PHP
[原创]php正则删除html代码中class样式属性的方法
2017/05/24 PHP
对于Laravel 5.5核心架构的深入理解
2018/02/22 PHP
PHP5中使用mysqli的prepare操作数据库的介绍
2019/03/18 PHP
Yii 框架使用数据库(databases)的方法示例
2020/05/19 PHP
js加密解密字符串可自定义密码因子
2014/05/13 Javascript
javascript学习笔记(六)数据类型和JSON格式
2014/10/08 Javascript
jQuery插件datalist实现很好看的input下拉列表
2015/07/14 Javascript
jQuery事件与动画基础详解
2017/02/23 Javascript
微信小程序实现图片上传、删除和预览功能的方法
2017/12/18 Javascript
AngularJS双向数据绑定原理之$watch、$apply和$digest的应用
2018/01/30 Javascript
vue axios整合使用全攻略
2018/05/24 Javascript
vue-router+nginx 非根路径配置方法
2018/06/30 Javascript
JS在Array数组中按指定位置删除或添加元素对象方法示例
2019/11/19 Javascript
Webpack5正式发布,有哪些新特性
2020/10/12 Javascript
[04:21]狐狸妈带你到现场 DOTA2 TI中国区预选赛线下赛路线指引
2014/05/22 DOTA
[04:40]2016个国际邀请赛中国区预选赛场地——华西村观战指南
2016/06/25 DOTA
Python中functools模块的常用函数解析
2016/06/30 Python
Python面向对象程序设计OOP入门教程【类,实例,继承,重载等】
2019/01/05 Python
详解python实现交叉验证法与留出法
2019/07/11 Python
python笔记_将循环内容在一行输出的方法
2019/08/08 Python
python实现二分类的卡方分箱示例
2019/11/22 Python
PyQt5高级界面控件之QTableWidget的具体使用方法
2020/02/23 Python
西班牙创意礼品和小工具网上商店:Curiosite
2016/07/26 全球购物
英国假睫毛购买网站:FalseEyelashes.co.uk
2018/05/23 全球购物
解释一下钝化(Swap out)
2016/12/26 面试题
党支部公开承诺书
2014/03/28 职场文书
三八节标语
2014/06/27 职场文书
党员四风问题对照检查材料
2014/09/27 职场文书
2014年财务工作总结范文
2014/11/11 职场文书
Windows10安装Apache2.4的方法步骤
2022/06/25 Servers