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 相关文章推荐
原生js实现数字字母混合验证码的简单实例
Dec 10 Javascript
js与jQuery实现checkbox复选框全选/全不选的方法
Jan 05 Javascript
js实现3d悬浮效果
Feb 16 Javascript
form表单序列化详解(推荐)
Aug 15 Javascript
详谈innerHTML innerText的使用和区别
Aug 18 Javascript
详细分析jsonp的原理和实现方式
Nov 20 Javascript
AngularJS 多指令Scope问题的解决
Oct 25 Javascript
vue中 this.$set的用法详解
Sep 06 Javascript
KnockoutJS数组比较算法实例详解
Nov 25 Javascript
js键盘事件实现人物的行走
Jan 17 Javascript
vant 自定义 van-dropdown-item的用法
Aug 05 Javascript
Angular CLI发布路径的配置项浅析
Mar 29 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
把77A收信机改造成收音机
2021/03/02 无线电
CI框架学习笔记(二) -入口文件index.php
2014/10/27 PHP
PHP回溯法解决0-1背包问题实例分析
2015/03/23 PHP
微信小程序发送订阅消息的方法(php 为例)
2019/10/30 PHP
Javascript 获取LI里的内容
2008/12/17 Javascript
jQuery 处理网页内容的实现代码
2010/02/15 Javascript
浅说js变量
2011/05/25 Javascript
JavaScript中的公有、私有、特权和静态成员用法分析
2014/11/20 Javascript
asp.net中oracle 存储过程(图文)
2015/08/12 Javascript
关于json字符串与实体之间的严格验证代码
2016/11/10 Javascript
js canvas实现简单的图像扩散效果
2020/06/28 Javascript
详解angular路由高亮之RouterLinkActive
2018/04/28 Javascript
vue.js 中使用(...)运算符报错的解决方法
2018/08/09 Javascript
微信小程序使用component自定义toast弹窗效果
2018/11/27 Javascript
puppeteer实现html截图的示例代码
2019/01/10 Javascript
vue 中固定导航栏的实例代码
2019/11/01 Javascript
js在HTML的三种引用方式详解
2020/08/29 Javascript
[05:46]2018完美盛典-《同梦共竞》
2018/12/17 DOTA
python获取当前时间对应unix时间戳的方法
2015/05/15 Python
简单解决Python文件中文编码问题
2015/11/22 Python
Python3控制路由器——使用requests重启极路由.py
2016/05/11 Python
python内置函数:lambda、map、filter简单介绍
2017/11/16 Python
机器学习的框架偏向于Python的13个原因
2017/12/07 Python
解决Python运行文件出现out of memory框的问题
2018/12/03 Python
python之pexpect实现自动交互的例子
2019/07/25 Python
python实现代码统计程序
2019/09/19 Python
python爬取本站电子书信息并入库的实现代码
2020/01/20 Python
python接口自动化之ConfigParser配置文件的使用详解
2020/08/03 Python
python实现定时发送邮件到指定邮箱
2020/12/23 Python
猫途鹰:全球领先的旅游点评社区
2017/04/07 全球购物
中学生爱国演讲稿
2013/12/31 职场文书
师范生求职自荐信
2014/06/14 职场文书
英文升职感谢信
2015/01/23 职场文书
python实现会员信息管理系统(List)
2022/03/18 Python
MySQL分布式恢复进阶
2022/07/23 MySQL
详解Golang如何实现支持随机删除元素的堆
2022/09/23 Python