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 相关文章推荐
跟着JQuery API学Jquery 之三 筛选
Apr 09 Javascript
JS判断客户端是手机还是PC的2个代码
Apr 12 Javascript
JavaScript利用正则表达式去除日期中的-
Jun 09 Javascript
使用jQuery判断IE浏览器版本的代码
Jun 14 Javascript
javascript实现仿腾讯游戏选择
May 14 Javascript
jquery判断输入密码两次是否相等
Apr 22 Javascript
AngularJS在IE下取数据总是缓存问题的解决方法
Aug 05 Javascript
jQuery移除或禁用html元素点击事件常用方法小结
Feb 10 Javascript
Node.js使用Angular简单示例
May 11 Javascript
JS使用队列对数组排列,基数排序算法示例
Mar 02 Javascript
layer弹出框确定前验证:弹出消息框的方法(弹出两个layer)
Sep 21 Javascript
vue中的循环对象属性和属性值用法
Sep 04 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
浅谈电磁辐射对健康的影响
2021/03/01 无线电
php的字符串用法小结
2010/06/08 PHP
PHP生成加减算法方式的验证码实例
2018/03/12 PHP
showModelessDialog()使用详解
2006/09/07 Javascript
Iframe自适应高度绝对好使的代码 兼容IE,遨游,火狐
2011/01/27 Javascript
基于jquery的web页面日期格式化插件
2011/11/15 Javascript
js获得网页背景色和字体色的方法
2014/03/21 Javascript
JavaScript中的函数的两种定义方式和函数变量赋值
2014/05/12 Javascript
jquery 3D 标签云示例代码
2014/06/12 Javascript
搭建pomelo 开发环境
2014/06/24 Javascript
js实现页面跳转的几种方法小结
2016/05/16 Javascript
jQuery EasyUI Tab 选项卡问题小结
2016/08/16 Javascript
JS基于onclick事件实现单个按钮的编辑与保存功能示例
2017/02/13 Javascript
走进AngularJs之过滤器(filter)详解
2017/02/17 Javascript
深入理解Vue 的条件渲染和列表渲染
2017/09/01 Javascript
解决vue同一slot在组件中渲染多次的问题
2018/09/06 Javascript
angular4笔记系列之内置指令小结
2018/11/09 Javascript
three.js搭建室内场景教程
2018/12/30 Javascript
在Qt5和PyQt5中设置支持高分辨率屏幕自适应的方法
2019/06/18 Python
Pyqt QImage 与 np array 转换方法
2019/06/27 Python
Python将二维列表list的数据输出(TXT,Excel)
2020/04/23 Python
OpenCV读取与写入图片的实现
2020/10/13 Python
详解CSS3中@media的实际使用
2015/08/04 HTML / CSS
CSS3中各种颜色属性的使用教程
2016/05/17 HTML / CSS
详解HTML5布局和HTML5标签
2020/10/26 HTML / CSS
英国床垫在线:Mattress Online
2016/12/07 全球购物
美国知名保健品网站:LuckyVitamin(支持中文)
2017/08/09 全球购物
拉斯维加斯城市观光通行证:Las Vegas Pass
2019/05/21 全球购物
台湾专柜女包:KINAZ
2019/12/26 全球购物
医校毕业生自我鉴定
2014/01/25 职场文书
采购求职信
2014/03/17 职场文书
爱护公物演讲稿
2014/09/09 职场文书
儿园租房协议书范本
2014/12/02 职场文书
精神文明建设汇报材料
2014/12/24 职场文书
微观世界观后感
2015/06/10 职场文书
2016企业先进集体事迹材料
2016/02/25 职场文书