jquery实现垂直无限轮播的方法分析


Posted in jQuery onJuly 16, 2019

本文实例讲述了jquery实现垂直无限轮播的方法。分享给大家供大家参考,具体如下:

javascript垂直轮播,依赖于jquery实现的,并且首尾无缝衔接。原理很简单,就不讲述了,直接贴源码。

1.HTML节点

<div class="banner_group">
    <ul id="banner">
      <!-- 缓存末项,实现滑动到最开始后,无限轮播 -->
      <li style="background-color: chartreuse">第四页</li>
      <li style="background-color: #f6894d">第一页</li>
      <li style="background-color: royalblue">第二页</li>
      <li style="background-color: red">第三页</li>
      <li style="background-color: chartreuse">第四页</li>
      <!-- 缓存首项,实现滑动到最后过后,无限轮播 -->
      <li style="background-color: #f6894d">第一页</li>
    </ul>
    <div class="scrollPageBtn">
      <div style="width: 100%;height: 100%;position: relative;">
        <label id="last" style="width:100%;position: absolute;top: 0;text-align: center">↑</label>
        <label id="next" style="width:100%;position: absolute;bottom: 0;text-align: center">↓</label>
      </div>
    </div>
</div>

2.CSS样式

<style>
    body{
      margin:0;
      padding: 0;
    }
    .banner_group{
      width: 300px;
      height: 500px;
      overflow: hidden;
      position: relative;
    }
    .scrollPageBtn{
      width: 30px;
      height: 100%;
      position: absolute;
      top: 0;
      left: 40%;
      background-color: #b2b2b2;
      opacity: 0.2;
    }
    ul{
      list-style: none;
      width: 100%;
      height: 100%;
      margin: 0;
      padding: 0;
      position: relative;
    }
    ul li{
      width: 100%;
      height: 100%;
      color: white;
      font-size: 25px;
    }
</style>

3.JQuery准备

<!-- 引入jquery -->
<script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>

4.JavaScript代码

<script>
    var index = 0; // 保存当前所在项
    /* 是否允许点击滑动动画,如果正在执行动画的过程中,
    则禁止点击,如果动画完成后,则允许点击,
    避免由于连点,出现画面不正常问题. */
    var allowClick = true; //
    // 页面加载完成后调用
    $(function(){
      index = 1; // 初始显示第2项
  /* 注意:第一项是用来缓存末项的,实现无缝连接准备的,所以最开始显示的应该是第2项 */
      $("#banner").css("bottom", "500px"); // 准备初始显示项
  // 上一页
      $("#last").on("click", function(){
        if(allowClick){
          allowClick = false;
          index--; // 上一页,--
   // 如果已经到了最开始过后,动画完成后,定位到末项
          if(index == 0){
            $("#banner").animate({bottom: (index * 500) + 'px'}, "fast", "swing", function () {
              index = 4;
              $("#banner").css("bottom", "2000px"); // 定位到末项
              allowClick = true;
            });
          }else{
            $("#banner").animate({bottom: (index * 500) + 'px'}, "fast", "swing", function () {
              allowClick = true;
            });
          }
        }
      });
  // 下一页
      $("#next").on("click", function(){
        if(allowClick){
          allowClick = false;
          if(index <= 5){
            index ++; // 下一页++
            if(index == 5){
              $("#banner").animate({bottom: (index * 500) + 'px'}, "fast", "swing", function () {
                index = 1;
                $("#banner").css("bottom", "500px");
                allowClick = true;
              });
            }else{
              $("#banner").animate({bottom: (index * 500) + 'px'}, "fast", "swing", function () {
                allowClick = true;
              });
            }
          }
        }
      });
    });
</script>

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

jQuery 相关文章推荐
jQuery鼠标移动图片上实现放大效果
Jun 25 jQuery
jQuery扩展_动力节点Java学院整理
Jul 05 jQuery
使用jQuery实现两个div中按钮互换位置的实例代码
Sep 21 jQuery
jQuery使用bind函数实现绑定多个事件的方法
Oct 11 jQuery
jquery实现楼层滚动效果
Jan 01 jQuery
jQuery实现模糊查询的方法分析
May 10 jQuery
jQuery实现炫丽的3d旋转星空效果
Jul 04 jQuery
jQuery each和js forEach用法比较
Feb 27 jQuery
jQuery实现条件搜索查询、实时取值及升降序排序的方法分析
May 04 jQuery
Easyui 去除jquery-easui tab页div自带滚动条的方法
May 10 jQuery
jquery传参及获取方式(两种方式)
Feb 13 jQuery
js、jquery实现列表模糊搜索功能过程解析
Mar 27 jQuery
JQuery实现简单的复选框树形结构图示例【附源码下载】
Jul 16 #jQuery
jquery实现自定义树形表格的方法【自定义树形结构table】
Jul 12 #jQuery
JavaScript表格隔行变色和Tab标签页特效示例【附jQuery版】
Jul 11 #jQuery
JavaScript实现的弹出遮罩层特效经典示例【基于jQuery】
Jul 10 #jQuery
JavaScript实现的滚动公告特效【基于jQuery】
Jul 10 #jQuery
JavaScript前端页面搜索功能案例【基于jQuery】
Jul 10 #jQuery
jquery多级树形下拉菜单的实例代码
Jul 09 #jQuery
You might like
php SQL防注入代码集合
2008/04/25 PHP
PHP连接操作access数据库实例
2015/03/30 PHP
php+curl 发送图片处理代码分享
2015/07/09 PHP
手把手编写PHP框架 深入了解MVC运行流程
2016/09/19 PHP
php使用Swoole实现毫秒级定时任务的方法
2020/09/04 PHP
js程序中美元符号$是什么
2008/06/05 Javascript
javascript中字符串拼接需注意的问题
2010/07/13 Javascript
基于jquery的二级联动菜单实现代码
2011/04/25 Javascript
Javascript中自动切换焦点实现代码
2012/12/15 Javascript
js之ActiveX控件使用说明 new ActiveXObject()
2014/03/03 Javascript
JS实现跟随鼠标的链接文字提示框效果
2015/08/06 Javascript
JavaScript中三种异步上传文件方式
2016/03/06 Javascript
简单实现JS计算器功能
2016/12/21 Javascript
javascript工厂模式和构造函数模式创建对象方法解析
2016/12/30 Javascript
解决koa2 ctx.render is not a function报错问题
2018/08/07 Javascript
浅谈vue中resetFields()使用注意事项
2020/08/12 Javascript
JS实现按比例缩小图片宽高
2020/08/24 Javascript
[01:10]DOTA2 Supermajor:英雄,由我们见证
2018/05/14 DOTA
[02:47]2018年度DOTA2最佳辅助位选手4号位-完美盛典
2018/12/17 DOTA
Python之dict(或对象)与json之间的互相转化实例
2018/06/05 Python
运用Python的webbrowser实现定时打开特定网页
2019/02/21 Python
十行代码使用Python写一个USB病毒
2019/06/21 Python
让Python脚本暂停执行的几种方法(小结)
2019/07/11 Python
Python urllib2运行过程原理解析
2020/06/04 Python
Sofmap官网:日本著名的数码电器专卖店
2017/05/19 全球购物
加拿大品牌鞋包连锁店:Little Burgundy
2021/02/28 全球购物
加拿大探亲邀请信
2014/01/28 职场文书
反四风对照检查材料
2014/09/22 职场文书
乡镇领导班子批评与自我批评材料
2014/09/23 职场文书
民主评议党员自我评议范文2014
2014/09/26 职场文书
销售业务员岗位职责
2015/02/13 职场文书
学雷锋献爱心倡议书
2015/04/27 职场文书
小学中队活动总结
2015/05/11 职场文书
让子弹飞观后感
2015/06/11 职场文书
技能培训通讯稿
2015/07/18 职场文书
撤回我也能看到!教你用Python制作微信防撤回脚本
2021/06/11 Python