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.masonry瀑布流效果
May 25 jQuery
jquery实现一个全局计时器(商城可用)
Jun 30 jQuery
JQuery 获取Dom元素的实例讲解
Jul 08 jQuery
jQuery的时间datetime控件在AngularJs中的使用实例(分享)
Aug 17 jQuery
jQuery实现的下雪动画效果示例【附源码下载】
Feb 02 jQuery
jQuery实现的鼠标拖动浮层功能示例【拖动div等任何标签】
Dec 29 jQuery
jQuery实现动态添加和删除input框代码实例
Mar 29 jQuery
JQuery属性操作与循环用法示例
May 15 jQuery
JS拖动选择table里的单元格完整实例【基于jQuery】
May 28 jQuery
jQuery实现提交表单时不提交隐藏div中input的方法
Oct 08 jQuery
IDEA配置jQuery, $符号不再显示黄色波浪线的问题
Oct 09 jQuery
jQuery实现简单评论区功能
Oct 26 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
phpMyAdmin链接MySql错误 个人解决方案
2009/12/28 PHP
PHP数据库万能引擎类adodb配置使用以及实例集锦
2014/06/12 PHP
PHP IDE PHPStorm配置支持友好Laravel代码提示方法
2015/05/12 PHP
WordPress中转义HTML与过滤链接的相关PHP函数使用解析
2015/12/22 PHP
javascript 表格排序和表头浮动效果(扩展SortTable)
2009/04/07 Javascript
23个超流行的jQuery相册插件整理分享
2011/04/25 Javascript
图片在浏览器中底部对齐 解决方法之一
2011/11/30 Javascript
js将控件隐藏的方法及display属性介绍
2013/07/04 Javascript
深入理解Javascript动态方法调用与参数修改的问题
2013/12/10 Javascript
IE、FF浏览器下修改标签透明度
2014/01/28 Javascript
jQuery大于号(&gt;)选择器的作用解释
2015/01/13 Javascript
jquery实现带缩略图的可定制高度画廊效果(5种)
2015/08/28 Javascript
实例详解ECMAScript5中新增的Array方法
2016/04/05 Javascript
AngularJS基础 ng-click 指令示例代码
2016/08/01 Javascript
浅谈jquery中使用canvas的问题
2016/10/10 Javascript
Vue.Js中的$watch()方法总结
2017/03/23 Javascript
使用 Javascript 实现浏览器推送提醒功能的示例
2017/11/03 Javascript
JointJS流程图的绘制方法
2018/12/03 Javascript
vue集成chart.js的实现方法
2019/08/20 Javascript
layer.confirm()右边按钮实现href的例子
2019/09/27 Javascript
vue不操作dom实现图片轮播的示例代码
2019/12/18 Javascript
在Python中使用pngquant压缩png图片的教程
2015/04/09 Python
selenium+python自动化测试之鼠标和键盘事件
2019/01/23 Python
python excel转换csv代码实例
2019/08/26 Python
HTML5实现表单自动验证功能实例代码
2017/01/11 HTML / CSS
HTML5 对各个标签的定义与规定:body的介绍
2012/06/21 HTML / CSS
html5小技巧之通过document.head获取head元素
2014/06/04 HTML / CSS
台湾流行服饰购物平台:OB严选
2018/01/21 全球购物
英国领先的亚洲旅游专家:Wendy Wu Tours
2018/01/21 全球购物
瑞士图书网站:Weltbild.ch
2019/09/17 全球购物
党员承诺践诺书
2014/05/20 职场文书
初中语文教师研修日志
2015/11/13 职场文书
Python如何使用循环结构和分支结构
2022/04/13 Python
阿里云服务器部署RabbitMQ集群的详细教程
2022/06/01 Servers
Python+SeaTable实现计算两个日期间的工作日天数
2022/07/07 Python
Go结合Gin导出Mysql数据到Excel表格
2022/08/05 Golang