最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

JavaScript实现滑动导航栏效果

来源:动视网 责编:小OO 时间:2020-11-27 22:31:30
文档

JavaScript实现滑动导航栏效果

本文实例为大家分享了js实现滑动导航栏效果的具体代码,供大家参考,具体内容如下:<,<。DOCTYPE html>;<;html>;<;head>;<;meta charset="UTF-8">;<;title>;<;/title>;<;meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1.0 ,0,0,"img/icon_events_unfold.png");$(".tabUl").css("display",ulHeight) $(".navScroll").on("click",".tabItem","li"。
推荐度:
导读本文实例为大家分享了js实现滑动导航栏效果的具体代码,供大家参考,具体内容如下:<,<。DOCTYPE html>;<;html>;<;head>;<;meta charset="UTF-8">;<;title>;<;/title>;<;meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1.0 ,0,0,"img/icon_events_unfold.png");$(".tabUl").css("display",ulHeight) $(".navScroll").on("click",".tabItem","li"。


本文实例为大家分享了js实现滑动导航栏效果的具体代码,供大家参考,具体内容如下

<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8">
 <title></title>
 <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1.0 ,user-scalable=no"> 
 
 <script src="node_modules/jquery/jquery.js"></script>
 <style>
 *{
 margin: 0;
 padding: 0;
 }
 .navScroll{
 position: relative;
 }
 #overflow{ 
 width: 100%;
 height: 30px;
 overflow-x: scroll;
 } 
 #overflow .container{
 height: 30px;
 }
 #overflow .container div{
 float: left;
 width: 100px;
 height: 30px;
 line-height: 30px;
 text-align: center;
 }
 #overflow::-webkit-scrollbar {
 display: none;
 -webkit-overflow-scrolling: touch;
 } 
 .navScroll .drop_down{
 position: absolute;
 top: 0;
 right: 0;
 width: 50px;
 height: 30px;
 }
 .navScroll .drop_down img{
 width: 100%;
 height: 100%;
 }
 .tabUl.clearFix{
 display: none; 
 width: 100%;
 list-style: none;
 z-index: 10;
 background: rgba(0,0,0,.1);
 }
 .tabUl li{
 float: left;
 width: 6.25rem;
 height: 2.65625rem;
 line-height: 2.65625rem;;
 text-align: center;
 }
 .clearFix{
 content: "";
 display: table;
 clear: both;
 }
 div, ul{
 color: #89CFE8;
 }
 
 #overflow .container div.lastWidth{
 width: 50px;
 }
 .red{
 color: #FF9933;
 }
 </style>
 </head>
 <body>
 <div class="navScroll">
 <div id="overflow"> 
 <div class="container"> 
 <div class="tabItem red">
 item1 
 </div> 
 <div class="tabItem">
 item2
 </div> 
 <div class="tabItem">
 item3 
 </div> 
 <div class="tabItem">
 item4
 </div> 
 <div class="tabItem">
 item5 
 </div> 
 <div class="tabItem">
 item6
 </div> 
 <div class="tabItem">
 item7 
 </div> 
 <div class="tabItem">
 item8
 </div> 
 <div class="tabItem">
 item9
 </div> 
 <div class="tabItem">
 item10 
 </div> 
 <div class="tabItem">
 item11 
 </div> 
 <div class="lastWidth"></div>
 </div> 
 </div> 
 <div class="drop_down">
 <img src="img/icon_events_fold.png" drop="down" " />
 </div>
 <ul class="tabUl clearFix">
 <li class="red">item1</li>
 <li >item2</li>
 <li >item3</li>
 <li >item4</li>
 <li >item5</li>
 <li >item6</li>
 <li >item7</li>
 <li >item8</li>
 <li >item9</li>
 <li >item10</li>
 <li >item11</li>
 
 </ul>
 </div>
 </body>
 <script>
 var width = 0;
 $('#overflow .container div').each(function () { 
 width += $(this).outerWidth(true); 
 }); 
 $('#overflow .container').css('width', width + "px"); 
 var flag = true;
 $(".drop_down img").click(function(e){ //箭头符号的变化
 if(flag){
 $(".drop_down img").attr("src","img/icon_events_unfold.png");
 $(".tabUl").css("display","block")
 flag = false; 
 }else{
 $(".drop_down img").attr("src","img/icon_events_fold.png");
 $(".tabUl").css("display","none")
 flag = true;
 }
 });
 var ulHeight= Math.ceil(($(".tabUl li").length-1)/6)*2.65625 +"rem";
 $(".navScroll .tabUl").css("height",ulHeight)
 $(".navScroll").on("click",".tabItem",function(e,index){ //滑动栏点击样式 
 var $this=$(this);
 $(".tabItem").css({"color": "#89CFE8"})
 $($this).css({"color": "#FF9933"});
 var items = $($this)[0];
 var ulIndx;
 $(".tabItem").each(function(i,n){
 if(n==items){
 ulIndx = i;
 }
 }) 
 $(".tabUl li").css({"color": "#89CFE8"});
 var ulItems = $(".tabUl li")[ulIndx];
 $(ulItems).css({"color": "#FF9933"});
 moveNav(ulIndx);
 }) 
 $(".navScroll").on("click","li",function(e,index){ //下拉点击样式 
 var $this=$(this);
 $("li").css({"color": "#89CFE8"})
 $($this).css({"color": "#FF9933"});
 var items = $($this)[0];
 var ulIndx;
 $("li").each(function(i,n){
 if(n==items){
 ulIndx = i;
 }
 }) 
 $(".tabItem").css({"color": "#89CFE8"});
 var ulItems = $(".tabItem")[ulIndx];
 $(ulItems).css({"color": "#FF9933"});
 $(".drop_down img").attr("src","img/icon_events_fold.png");
 $(".tabUl").css("display","none")
 flag = true;
 moveNav(ulIndx);
 }) 
 function moveNav(index){ //滑动栏移动效果
 var allImg = $(".navScroll").find(".tabItem");
 var navImgWidth = allImg.width();
 var lastWidth = $(".container .lastWidth").width();
 var windowWidth = $(window).width();
 var navBox = $("#overflow");
 if(navImgWidth*(index+1) >=windowWidth-navImgWidth){
 if(navImgWidth*(index+1)<navImgWidth*(allImg.length-1)+lastWidth-windowWidth){
 navBox.animate({scrollLeft:navImgWidth*(index+1)},500);
 }else{
 navBox.animate({scrollLeft:navImgWidth*(allImg.length)+lastWidth-windowWidth},500);
 }
 }else{
 navBox.animate({scrollLeft:'0px'},1000);
 }
 }
 </script>
</html>

导航栏可滑动

下拉点击会相应的改变导航栏

文档

JavaScript实现滑动导航栏效果

本文实例为大家分享了js实现滑动导航栏效果的具体代码,供大家参考,具体内容如下:<,<。DOCTYPE html>;<;html>;<;head>;<;meta charset="UTF-8">;<;title>;<;/title>;<;meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1.0 ,0,0,"img/icon_events_unfold.png");$(".tabUl").css("display",ulHeight) $(".navScroll").on("click",".tabItem","li"。
推荐度:
标签: 导航 实现 滚动
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top