nav导航的html结构
<!-- 导航 --> <!-- .part -->
在需要跳转的楼层上添加part类名就行了
<div class="line"></div> <div class="nav"> <div class="swiper-container"> <div class="swiper-wrapper wrapper"> <div class="swiper-slide list on">领券下单</div> <div class="swiper-slide list">抽奖赢礼</div> <div class="swiper-slide list">精选囤货</div> <div class="swiper-slide list">半价专区</div> <div class="swiper-slide list">爆款推荐</div> <div class="swiper-slide list">大牌推荐</div> <div class="swiper-slide list">更多福利</div> <div class="swiper-slide list" id="last">特惠专区</div> </div> <div class="swiper-pagination"></div> <div class="direction"></div> <div class="direction direction-prev"></div> <div class="direction direction-next"></div> </div> </div>
nav导航的css样式
/*导航 start*/ .line { background-color: #fff; } .line.move { height: 0.8rem; } .nav { margin: 0 auto; height: 0.8rem; width: 100%; line-height: 0.8rem; text-align: center; background-color: #ffffff; z-index: 999; position: relative; color: #3c0486; font-size: 0.28rem; max-width: 7.5rem; } .nav.move { position: fixed; top: 0; } .nav.box { height: 3rem; border-top: 0.03rem solid #8fc1e8; width: 0.5rem; } .nav .swiper-container { height: 0.8rem; } .nav .swiper-slide { text-align: center; width: auto; color: #666666; white-space: nowrap; padding: 0 0.3rem; } .nav .swiper-slide.on { color: #fe8716; } /*导航 end*/
引入的JS代码
var navSwiper = new Swiper(\'.nav .swiper-container\', { slidesPerView: \'auto\', paginationClickable: true, pagination : \'.nav .swiper-pagination\', paginationHide :false, nextButton:\'.nav .direction-next\', prevButton:\'.nav .direction-prev\' }); // 双旦狂欢 // var bashSwiper = new Swiper(\'.bash-list .swiper-container\', { // slidesPerView: \'auto\',//一行显示3个 // slidesPerColumn: 3,//显示2行 // spaceBetween :5, // }); window.onload = function(){ setTimeout(function() { loading(); }, 600); } function loading(){ var nowCur = $(\'.nav .swiper-wrapper div.on\').index(); // console.log(nowCur); if (nowCur>3) { $(\'.swiper-pagination .swiper-pagination-bullet\').eq(nowCur-1).click(); } } $(window).on( \'scroll\' , function(){ var nowTop = $(window).scrollTop(); var a = 0; $(\'.part\').each(function(){ var nowIndex = $(\'.part\').index(this); var boxTop = $(this).offset().top; if( boxTop <= nowTop + $(\'.nav\').height()+10 ){ a = nowIndex; } }) var woca = $(\'.nav .swiper-wrapper div.on\').index(); $(\'.swiper-pagination span\').eq(a).click(); $(\'.nav .swiper-wrapper div\').removeClass(\'on\').eq(a).addClass(\'on\'); // 瀵艰埅楂樺害 var lineTop = $(\'.line\').offset().top; if( nowTop >= lineTop ){ $(\'.nav,.line\').addClass(\'move\'); } else { $(\'.nav,.line\').removeClass(\'move\'); } }) $(\'.direction\').bind(\'click\',function(){ if( $(this).hasClass(\'swiper-button-disabled\') && $(this).hasClass(\'direction-next\') ){ // $(\'.direction-prev\').fadeIn(600); // $(\'.direction-next\').fadeOut(600); } else if ( $(this).hasClass(\'swiper-button-disabled\') && $(this).hasClass(\'direction-prev\') ) { // $(\'.direction-next\').fadeIn(600); // $(\'.direction-prev\').fadeOut(600); } }) $(\'.nav .swiper-slide\').click(function(){ var nowIndex = $(this).index(); $(\'body,html\').animate({\'scrollTop\':$(\'.part\').eq(nowIndex).offset().top - $(\'.nav\').height() }) })
实现的效果: