溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

使用swiper4怎么實(shí)現(xiàn)一個(gè)移動(dòng)端導(dǎo)航切換功能

發(fā)布時(shí)間:2021-04-19 17:27:32 來源:億速云 閱讀:156 作者:Leah 欄目:web開發(fā)

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)碛嘘P(guān)使用swiper4怎么實(shí)現(xiàn)一個(gè)移動(dòng)端導(dǎo)航切換功能,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

首先導(dǎo)入

使用swiper4怎么實(shí)現(xiàn)一個(gè)移動(dòng)端導(dǎo)航切換功能

<link rel="stylesheet" href="css/swiper.min.css" >
<script src="js/jquery-1.10.1.min.js"></script>
<script src="js/swiper.min.js"></script>(這里用的是Swiper 4.0.7版本)

在寫入html內(nèi)容

<div id=header>
 <div class="head-top">
 <h4>商品分類</h4>
 </div>
 <div id="nav" class="swiper-container">
 <ul class="swiper-wrapper">
 <li class="swiper-slide active-nav"><a href="javascript:;" >手機(jī)</a></li>
 <li class="swiper-slide"><a href="javascript:;">廚具</a></li>
 <li class="swiper-slide"><a href="javascript:;">數(shù)碼</a></li>
 <li class="swiper-slide"><a href="javascript:;">家紡</a></li>
 <li class="swiper-slide"><a href="javascript:;">生鮮</a></li>
 <li class="swiper-slide"><a href="javascript:;">家用電器</a></li>
 <li class="swiper-slide"><a href="javascript:;">食品飲料</a></li>
 <li class="swiper-slide"><a href="javascript:;">電腦/辦公</a></li>
 <li class="swiper-slide"><a href="javascript:;">家用日用</a></li>
 </ul>
 </div>
 </div>
 <div id="page" class="swiper-container" id="page">
 <div class="swiper-wrapper">
 <div class="swiper-slide slidepage">手機(jī)</div>
 <div class="swiper-slide slidepage">廚具</div>
 <div class="swiper-slide slidepage">數(shù)碼</div>
 <div class="swiper-slide slidepage">家紡</div>
 <div class="swiper-slide slidepage">生鮮</div>
 <div class="swiper-slide slidepage">家用電器</div>
 <div class="swiper-slide slidepage">食品飲料</div>
 <div class="swiper-slide slidepage">電腦/辦公</div>
 <div class="swiper-slide slidepage">家用日用</div>
 </div>
</div>

最后調(diào)用swiper

<script>
 var myNav = new Swiper('#nav', {
 spaceBetween: 10,
 slidesPerView : 3,
 watchSlidesProgress : true,
 watchSlidesVisibility : true,
 on:{
 tap: function(){
  myPage.slideTo( myNav.clickedIndex)
 }
 }
 })
 var myPage = new Swiper('#page',{
 on:{
 slideChangeTransitionStart: function(){
 updateNavPosition()
 }}
 })
 function updateNavPosition(){
 $('#nav .active-nav').removeClass('active-nav');
 var activeNav = $('#nav .swiper-slide').eq(myPage.activeIndex).addClass('active-nav');
 if (!activeNav.hasClass('swiper-slide-visible')) {
 console.log(1);
 if (activeNav.index()>myNav.activeIndex) {
  console.log(2);
  var thumbsPerNav = Math.floor(myNav.width/activeNav.width())-1
  myNav.slideTo(activeNav.index()-thumbsPerNav)
 }
 else {
  console.log(3);
  myNav.slideTo(activeNav.index())
 } 
 }
 }
</script>

全部代碼如下:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>商品分類</title>
 <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" />
 <link rel="stylesheet" href="css/swiper.min.css" >
 <script src="js/jquery-1.10.1.min.js"></script>
 <script src="js/swiper.min.js"></script>
 <style>
 *{padding:0;margin:0;font-size:20px;color:#333;}
 html{background:#fff;}
 a{text-decoration:none;}
 body{max-width:640px;margin:0 auto;position:relative;background:#ccc;overflow:hidden;}
 img{width:100%;border:0;}
 li{list-style:none;}

 .head-top{height:36px;position:fixed;top:0;left:0;text-align:center;width:100%;line-height:36px;}
 .swiper-containee{max-width:640px;}
 #nav{margin-top:36px;border-bottom:1px solid #999;padding:10px;}
 #nav li{text-align:center;}
 .active-nav{
 color:#fff;
 background:#ddd !important;
 }
 .active-nav a{
 color:#fff;
 background:#ddd !important;
 }
 #page .swiper-slide{height:6rem;}
 </style>
</head>
<body>
 <div id=header>
 <div class="head-top">
 <h4>商品分類</h4>
 </div>
 <div id="nav" class="swiper-container">
 <ul class="swiper-wrapper">
 <li class="swiper-slide"><a href="javascript:;" >手機(jī)</a></li>
 <li class="swiper-slide"><a href="javascript:;" >廚具</a></li>
 <li class="swiper-slide"><a href="javascript:;" >數(shù)碼</a></li>
 <li class="swiper-slide"><a href="javascript:;" >家紡</a></li>
 <li class="swiper-slide"><a href="javascript:;" >生鮮</a></li>
 <li class="swiper-slide"><a href="javascript:;" >家用電器</a></li>
 <li class="swiper-slide"><a href="javascript:;" >食品飲料</a></li>
 <li class="swiper-slide"><a href="javascript:;" >電腦/辦公</a></li>
 <li class="swiper-slide"><a href="javascript:;" >家用日用</a></li>
 </ul>
 </div>
 </div>
 <div id="page" class="swiper-container" id="page">
 <div class="swiper-wrapper">
 <div class="swiper-slide slidepage">手機(jī)</div>
 <div class="swiper-slide slidepage">廚具</div>
 <div class="swiper-slide slidepage">數(shù)碼</div>
 <div class="swiper-slide slidepage">家紡</div>
 <div class="swiper-slide slidepage">生鮮</div>
 <div class="swiper-slide slidepage">家用電器</div>
 <div class="swiper-slide slidepage">食品飲料</div>
 <div class="swiper-slide slidepage">電腦/辦公</div>
 <div class="swiper-slide slidepage">家用日用</div>
 </div>
 </div>
 <script>
 var myNav = new Swiper('#nav', {
 spaceBetween: 10,
 slidesPerView : 3,
 watchSlidesProgress : true,
 watchSlidesVisibility : true,
 on:{
 tap: function(){
  myPage.slideTo( myNav.clickedIndex)
 }
 }
 })
 var myPage = new Swiper('#page',{
 on:{
 slideChangeTransitionStart: function(){
 updateNavPosition()
 }}
 })
 function updateNavPosition(){
 $('#nav .active-nav').removeClass('active-nav');
 var activeNav = $('#nav .swiper-slide').eq(myPage.activeIndex).addClass('active-nav');
 if (!activeNav.hasClass('swiper-slide-visible')) {
 console.log(1);
 if (activeNav.index()>myNav.activeIndex) {
  console.log(2);
  var thumbsPerNav = Math.floor(myNav.width/activeNav.width())-1
  myNav.slideTo(activeNav.index()-thumbsPerNav)
 }
 else {
  console.log(3);
  myNav.slideTo(activeNav.index())
 } 
 }
 }
 </script>
</body>
</html>

上述就是小編為大家分享的使用swiper4怎么實(shí)現(xiàn)一個(gè)移動(dòng)端導(dǎo)航切換功能了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI