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改变img标签的src属性在IE下没反应的解决方法
Jul 23 Javascript
jquery $(this).attr $(this).val方法使用介绍
Oct 08 Javascript
showModelDialog弹出文件下载窗口的使用示例
Nov 19 Javascript
页面定时刷新(1秒刷新一次)
Nov 22 Javascript
js鼠标及对象坐标控制属性详细解析
Dec 14 Javascript
简单的JS时钟实例讲解
Jan 13 Javascript
学习Angularjs分页指令
Jul 01 Javascript
基于jQuery实现表格的查看修改删除
Aug 01 Javascript
基于jQuery代码实现圆形菜单展开收缩效果
Feb 13 Javascript
Vue组件实例间的直接访问实现代码
Aug 20 Javascript
swiper移动端轮播插件(触碰图片之后停止轮播)
Dec 28 Javascript
js根据json数据中的某一个属性来给数据分组的方法
Oct 08 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
PHP实例分享判断客户端是否使用代理服务器及其匿名级别
2014/06/04 PHP
PHP正则表达式匹配替换与分割功能实例浅析
2017/02/04 PHP
PHP二维数组实现去除重复项的方法【保留各个键值】
2017/12/21 PHP
javascript中负数算术右移、逻辑右移的奥秘探索
2013/10/17 Javascript
Javascript实现简单的富文本编辑器附演示
2014/06/16 Javascript
jquery中添加属性和删除属性
2015/06/03 Javascript
JavaScript中创建对象的模式汇总
2016/04/19 Javascript
BootStrap中的表单大全
2016/09/07 Javascript
基于JS实现弹出一个隐藏的div窗口body页面变成灰色并且不可被编辑
2016/12/14 Javascript
jQuery实现在HTML文档加载完毕后自动执行某个事件的方法
2017/05/08 jQuery
React Native基础入门之初步使用Flexbox布局
2018/07/02 Javascript
Nuxt.js开启SSR渲染的教程详解
2018/11/30 Javascript
基于mpvue的简单弹窗组件mptoast使用详解
2019/08/02 Javascript
微信小程序 textarea 层级过高问题简单解决方案
2019/10/14 Javascript
基于原生js实现九宫格算法代码实例
2020/07/03 Javascript
Vue实现图书管理案例
2021/01/20 Vue.js
[54:33]2018DOTA2亚洲邀请赛小组赛 A组加赛 Liquid vs Optic
2018/04/03 DOTA
处理Python中的URLError异常的方法
2015/04/30 Python
Python pip 安装与使用(安装、更新、删除)
2019/10/06 Python
通过python 执行 nohup 不生效的解决
2020/04/16 Python
Django全局启用登陆验证login_required的方法
2020/06/02 Python
python3实现语音转文字(语音识别)和文字转语音(语音合成)
2020/10/14 Python
全面解析HTML5中的标准属性与自定义属性
2016/02/18 HTML / CSS
Fairyseason:为个人和批发商提供女装和配件
2017/03/01 全球购物
欧洲第一中国智能手机和平板电脑网上商店:CECT-SHOP
2018/01/08 全球购物
Araks官网:纽约内衣品牌
2020/10/15 全球购物
亿阳信通股份有限公司笔试题(C#)
2016/03/04 面试题
介绍一下XMLHttpRequest对象的常用方法和属性
2013/05/24 面试题
汽车专业人才自我鉴定范文
2013/12/29 职场文书
国际商务专业毕业生自我鉴定2014
2014/09/27 职场文书
2015年爱国卫生月活动总结
2015/03/26 职场文书
党支部综合考察意见
2015/06/01 职场文书
如何开发一个渐进式Web应用程序PWA
2021/05/10 Javascript
Python的代理类实现,控制访问和修改属性的权限你都了解吗
2022/03/21 Python
win11高清晰音频管理器在哪里?win11找不到高清晰音频管理器解决办法
2022/04/08 数码科技
JS class语法糖的深入剖析
2022/07/07 Javascript