swiperjs实现导航与tab页的联动


Posted in Javascript onDecember 13, 2020

本文实例为大家分享了swiperjs实现导航与tab页的联动,供大家参考,具体内容如下

这里主要实现了以下功能:

1.点击导航栏切换tab
2.tab页高度自适应不会影响布局
3.导航栏的拖动
4.tab页的滑动与导航栏联动

代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <meta http-equiv="X-UA-Compatible" content="ie=edge">
 <title>Document</title>
 <style>
  *{
   margin: 0;
   padding: 0;
   list-style: none;
  }
  html,body{
   width: 100%;
  }
  .mains{
   width: 350px;
   height: 500px;
   background: skyblue;
   margin: 0 auto;
  }
  .tab,ul{
   width: 350px;
   height: 30px;
  }
  li{
   height: 30px;
   margin-right: 5px;
  }
  .swiper-bg{
   background: gray;
  }
 </style>
 <link rel="stylesheet" href="./public/swiper.min.css" >
</head>
<body>
  <div class="mains">
    <div class="tab swiper-container">
     <ul class="rank_ul swiper-wrapper">
      <li style="background: #de5055;color:#fff;border-color: #de5055;" class="swiper-slide">女包女鞋榜</li>
      <li class="swiper-slide">家居榜</li>
      <li class="swiper-slide">化?y品榜</li>
      <li class="swiper-slide">女装榜</li>
      <li class="swiper-slide">男装榜</li>
     </ul>
    </div>
    <div class="swiper-container swiper-container8 swiper-bg">
     <div class="swiper-wrapper">
     <div class="swiper-slide">
       女包女鞋榜
       <p>sada</p>
       <p>sada</p>
       <p>sada</p>
       <p>sada</p>
     </div>
     <div class="swiper-slide">
       家居榜
       <p>asd</p>
       <p>asd</p>
       <p>asd</p>
       <p>asd</p>
       <p>asd</p>
       <p>asd</p>
       <p>asd</p>
       <p>asd</p>
       <p>asd</p>
       <p>asd</p>
       <p>asd</p>
       <p>asd</p>
       <p>asd</p>
       <p>asd</p>
       <p>asd</p>
     </div>
     <div class="swiper-slide">
       化?y品榜
     </div>
     <div class="swiper-slide">
       女装榜
     </div>
     <div class="swiper-slide">
       男装榜
     </div>
     </div>
     </div>
    </div>
    </div>
 <script src="./public/jquery.min.js"></script>
 <script src="./public/swiper.min.js"></script>
 <script>
  var swiper = new Swiper(".swiper-container8",{
   on:{
    slideChange: function(){
     $(".rank_ul li").css("background","none");
     $(".rank_ul li").css("color","black");
     $(".rank_ul li").css("border-color","#e0e0e0");
     $(".swiper-container8").css("height","auto")
     $(".swiper-container8").css("height",$(".swiper-container8 .swiper-slide").eq(this.activeIndex).height())
     $(".rank_ul li").eq(this.activeIndex).css("background","#de5055");
     $(".rank_ul li").eq(this.activeIndex).css("border-color","#de5055");

     $(".rank_ul li").eq(this.activeIndex).css("color","#fff");
    },
   }
  });
  var tab = new Swiper(".tab",{
   slidesPerView : 3.5,
   watchSlidesProgress : true,
   watchSlidesVisibility : true,
  });
  var ul = document.getElementsByClassName("rank_ul")[0];
  var lis = ul.children;
  $(".swiper-container8").css("height",$(".swiper-container8 .swiper-slide").eq(0).height())
  for(var i = 0;i < lis.length;i++){
   var li = lis[i];
   li.index = i;
   li.onclick = function(){
   $(".rank_ul li").css("background","none");
   $(".rank_ul li").css("color","black");
   $(".rank_ul li").css("border-color","#e0e0e0");
   $(this).css("background","#de5055");
   $(this).css("color","#fff");
   $(this).css("border-color","#de5055");
   $(".swiper-container8").css("height","auto")
   $(".swiper-container8").css("height",$(".swiper-container8 .swiper-slide").eq(this.index).height())
   swiper.slideTo(this.index);
   } 
  }
 </script>
</body>
</html>

效果图:

swiperjs实现导航与tab页的联动

swiperjs实现导航与tab页的联动

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
window.location.hash 属性使用说明
Mar 20 Javascript
基于jQuery+HttpHandler实现图片裁剪效果代码(适用于论坛, SNS)
Sep 02 Javascript
详解JavaScript函数绑定
Aug 18 Javascript
通过正则表达式实现表单验证是否为中文
Feb 18 Javascript
js老生常谈之this,constructor ,prototype全面解析
Apr 05 Javascript
强大的 Angular 表单验证功能详细介绍
May 23 Javascript
js学习总结之DOM2兼容处理this问题的解决方法
Jul 27 Javascript
关于JS与jQuery中的文档加载问题
Aug 22 jQuery
AngularJS实现的select二级联动下拉菜单功能示例
Oct 25 Javascript
vue中如何创建多个ueditor实例教程
Nov 14 Javascript
详解vue文件中使用echarts.js的两种方式
Oct 18 Javascript
原生JS实现贪吃蛇小游戏
Mar 09 Javascript
Vue实现简单购物车功能
Dec 13 #Vue.js
javascript前端实现多视频上传
Dec 13 #Javascript
vue使用element-ui实现表单验证
Dec 13 #Vue.js
vue+element实现动态加载表单
Dec 13 #Vue.js
js实现滚动条自动滚动
Dec 13 #Javascript
vue实现两个区域滚动条同步滚动
Dec 13 #Vue.js
vue实现滚动鼠标滚轮切换页面
Dec 13 #Vue.js
You might like
基于AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法详解
2013/05/07 PHP
ThinkPHP的截取字符串函数无法显示省略号的解决方法
2014/06/25 PHP
php中unserialize返回false的解决方法
2014/09/22 PHP
php随机生成数字字母组合的方法
2015/03/18 PHP
大家在抢红包,程序员在研究红包算法
2015/08/31 PHP
PHP类的封装与继承详解
2015/09/29 PHP
php制作圆形用户头像的实例_自定义封装类源代码
2017/09/18 PHP
提高Laravel应用性能方法详解
2019/06/24 PHP
JavaScript闭包 懂不懂由你反正我是懂了
2011/10/21 Javascript
常用的JavaScript验证正则表达式汇总
2013/11/26 Javascript
js实现Select列表各项上移和下移的方法
2015/08/14 Javascript
详解Bootstrap按钮
2016/01/04 Javascript
JS中常用的输出方式(五种)
2016/06/12 Javascript
jQuery实现页面滚动时智能浮动定位
2017/01/08 Javascript
详解angular用$sce服务来过滤HTML标签
2017/04/11 Javascript
JavaScript注册时密码强度校验代码
2017/06/30 Javascript
ES6中javascript实现函数绑定及类的事件绑定功能详解
2017/11/08 Javascript
JS复杂判断的更优雅写法代码详解
2018/11/07 Javascript
Vue2 添加数据可视化支持的方法步骤
2019/01/02 Javascript
小程序识别身份证,银行卡,营业执照,驾照的实现
2019/11/05 Javascript
解决vue.js中settimeout遇到的问题(时间参数短效果不稳定)
2020/07/21 Javascript
python用户管理系统
2018/03/13 Python
详谈python中冒号与逗号的区别
2018/04/18 Python
Python如何发布程序的详细教程
2018/10/09 Python
python实现二维插值的三维显示
2018/12/17 Python
Python将文字转成语音并读出来的实例详解
2019/07/15 Python
Django-Model数据库操作(增删改查、连表结构)详解
2019/07/17 Python
Python操作Sqlite正确实现方法解析
2020/02/05 Python
python如何写出表白程序
2020/06/01 Python
Python hashlib和hmac模块使用方法解析
2020/12/08 Python
测试时代收集的软件测试面试题
2013/09/25 面试题
作文评语集锦大全
2014/04/23 职场文书
2014年内部审计工作总结
2014/12/09 职场文书
2015年感恩母亲节的演讲稿
2015/03/18 职场文书
前台岗位职责范本
2015/04/16 职场文书
《认识钟表》教学反思
2016/02/16 职场文书