一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服務(wù)器之家 - 編程語(yǔ)言 - JavaScript - jQuery 浮動(dòng)導(dǎo)航菜單適合購(gòu)物商品類型的網(wǎng)站

jQuery 浮動(dòng)導(dǎo)航菜單適合購(gòu)物商品類型的網(wǎng)站

2021-03-11 16:49jQuery教程網(wǎng) JavaScript

頁(yè)面長(zhǎng)度較大,需要方便快速的在頁(yè)面的不同位置進(jìn)行定位,所以浮動(dòng)菜單逐漸流行了起來(lái),下面是jQuery浮動(dòng)導(dǎo)航菜單適合購(gòu)物網(wǎng)站商品類型

單頁(yè)面網(wǎng)頁(yè)內(nèi)容較多,頁(yè)面長(zhǎng)度較大,需要方便快速的在頁(yè)面的不同位置進(jìn)行定位,所以浮動(dòng)菜單逐漸流行了起來(lái),如下圖 男裝、女裝、美妝等。

jQuery 浮動(dòng)導(dǎo)航菜單適合購(gòu)物商品類型的網(wǎng)站

這種菜單功能分為兩部分:

1、點(diǎn)擊菜單項(xiàng),網(wǎng)頁(yè)滾動(dòng)到對(duì)應(yīng)位置,可簡(jiǎn)單通過錨點(diǎn)實(shí)現(xiàn);

2、滾動(dòng)頁(yè)面的時(shí)候,菜單項(xiàng)的選中狀態(tài)要跟著改變,這就需要監(jiān)聽網(wǎng)頁(yè)的滾動(dòng)事件并通過一點(diǎn)計(jì)算來(lái)實(shí)現(xiàn)了;

jQuery 浮動(dòng)導(dǎo)航菜單適合購(gòu)物商品類型的網(wǎng)站

計(jì)算 scrollTop 和 各個(gè) div 的 offsetTop 的大小關(guān)系,判斷現(xiàn)在網(wǎng)頁(yè)顯示的位置在什么地方,再根據(jù)計(jì)算的結(jié)果給對(duì)應(yīng)的菜單項(xiàng)添加樣式。比如第二個(gè) div 的 offset().top = 300, 第三個(gè) div 的offset().top = 600,此時(shí)的 scrollTop = 400,說(shuō)明現(xiàn)在顯示的大部分是第二個(gè) div 的位置,700 則是第三個(gè) div。下面是一個(gè)簡(jiǎn)單的例子:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<div id="menu">
<ul>
<li><a href="#item1" class="current">1F 男裝</a></li>
<li><a href="#item2">2F 女裝</a></li>
<li><a href="#item3">3F 美妝</a></li>
<li><a href="#item4">4F 數(shù)碼</a></li>
<li><a href="#item5">5F 母嬰</a></li>
</ul>
</div>
<div id="content">
<h1>網(wǎng)購(gòu)</h1>
 
<div id="item1" class="item">
<h2>1F 男裝</h2>
<ul>
<li><a href="#"><img src="" alt=""/></a></li>
<!-- 若干個(gè)li -->
</ul>
</div>
<!-- 若干個(gè)item-->
</div>
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
* {margin: 0;padding: 0;}
body {font-size: 12px;line-height: 1.7;}
li {list-style: none;}
#content {width: 800px;margin: 0 auto;padding: 20px;}
#content h1 {color: #0088bb;}
#content .item {padding: 20px;margin-bottom: 20px;border: 1px dotted #0088bb;}
#content .item h2 {font-size: 16px;font-weight: bold;border-bottom: 2px solid #0088bb;margin-bottom: 10px;}
#content .item li {display: inline;margin-right: 10px;}
#content .item li a img {width: 230px;height: 230px;border: none;}
#menu{position:fixed;left:50%;margin-left:400px;top:100px;}
#menu ul li a {
display: block;
margin: 5px 0;
font-size: 14px;
font-weight: bold;
color: #333;
width: 80px;
height: 50px;
line-height: 50px;
text-decoration: none;
text-align: center;
}
#menu ul li a:hover,#menu ul li a.current {color: #fff;background: #0088bb;}
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$(function(){
$(window).scroll(function(){
var scrollTop = $(document).scrollTop();
var contentItems = $("#content").find(".item");
var currentItem = "";
contentItems.each(function(){
var contentItem = $(this);
var offsetTop = contentItem.offset().top;
if(scrollTop > offsetTop-200){//此處的200視具體情況自行設(shè)定,因?yàn)槿绻粶p去一個(gè)數(shù)值,在剛好滾動(dòng)到一個(gè)div的邊緣時(shí),菜單的選中狀態(tài)會(huì)出錯(cuò),比如,頁(yè)面剛好滾動(dòng)到第一個(gè)div的底部的時(shí)候,頁(yè)面已經(jīng)顯示出第二個(gè)div,而菜單中還是第一個(gè)選項(xiàng)處于選中狀態(tài)
currentItem = "#" + contentItem.attr("id");
}
});
if(currentItem&&currentItem!=$("#menu").find(".current").attr("href")){
$("#menu").find(".current").removeClass("current");
$("#menu").find("[href=" + currentItem + "]").addClass("current");
}
});
});

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧美亚洲国产精品久久第一页 | 国产在线视频自拍 | 国产在线99| 国产有码在线 | 亚洲成人黄色网址 | av在线色 | 午夜亚洲精品久久久久久 | 无码专区aaaaaa免费视频 | 果冻传媒在线免费观看 | 爱爱一级视频 | 久久这里只有精品视频9 | 窝窝午夜理伦影院 | 免费人成网址在线观看国内 | 久久久免费观成人影院 | 草莓茄子丝瓜番茄小蝌蚪 | 免费aⅴ片 | 369看片网| 国产成人综合一区精品 | 91天堂一区二区 | 久久黄视频 | yy3341殇情影院理论片 | 毛片一级毛片 | 国产成人精品第一区二区 | 欧美ay | 精品亚洲欧美中文字幕在线看 | 色综合欧美色综合七久久 | 99久久精品99999久久 | 国产探花视频 | 能播放的欧美同性videos | 国产人妖ts在线视频网 | 亚洲 欧美 日韩 综合 | 国内精品伊人久久大香线焦 | 免费稚嫩福利 | 洗濯屋H纯肉动漫在线观看 武侠艳妇屈辱的张开双腿 午夜在线观看免费观看 视频 | 午夜精品久久久内射近拍高清 | 亚洲日韩男人网在线 | 国产日韩欧美成人 | 无码AV熟妇素人内射V在线 | 热99re久久精品精品免费 | 小女生RAPPER入口 | 欧美男同video |