国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

如何用js實現鼠標向上滾動時浮動導航

2019-11-20 09:27:51
字體:
來源:轉載
供稿:網友

為什么會有這個需求呢?有沒有發現在國外的一些網站,當你向上滾動時,導航條浮動在頂部位置。用戶如果是想看內容就可以直接點擊到達,省去很多拖動的時間,當然返回頂部也是比較容易。但有時候返回頂部這個按鈕往往被人忽略了。下面一起來看看代碼和演示(引入jQuery 1.9)。

判斷鼠標向上滾動,或者向下滾動,可以通過對比用戶的上一次滾動的坐標和下一次的坐標,當上一次小于下一次時,即用戶在向下滾動,反之,則說明用戶在向上滾動。滾動的坐標值可以取窗口的scrollTop。

HTML代碼示例

<div id="Jnav"> <ul class="nav"> <li><a >WEB前端開發</a></li> <li><a href="#">前端開發博客</a></li> <li><a href="#">前端開發</a></li> <li><a href="#">前端開發</a></li> </ul></div>

JavaScript代碼示例

var $nav = $('#Jnav'), navTop = $nav.offset().top, navH = $nav.outerHeight(),winTop_1=0,winWidth=$(window).width(), holder=jQuery('<div>');$(window).on('scroll',function(){ var winTop_2 = $(window).scrollTop(); holder.css('height',navH); //開始浮動,不過不顯示 if(winTop_2>navTop && winWidth>980){ holder.show().insertBefore($nav); $nav.addClass('fixed-nav'); }else{ holder.hide(); $nav.removeClass('fixed-nav'); } //判斷鼠標向上滾動,顯示出來 if(winTop_2>winTop_1 && winWidth>980){ $nav.removeClass('fixed-nav-appear'); }else if(winTop_2<winTop_1){ $nav.addClass('fixed-nav-appear'); } winTop_1 = $(window).scrollTop();})

CSS代碼示例

.nav{width:980px; margin:0 auto;}.nav li{display:inline-block; *display:inline; *zoom:1; margin:0 10px;}.nav li a{display:block; padding:5px 10px;}.fixed-nav{ position: fixed; width:100%; top:-40px;  -webkit-transition: top .5s;  -moz-transition: top .5s;  -o-transition: top .5s;  transition: top .5s;  -webkit-box-shadow: 0 2px 2px rgba(0,0,0,.1);  -moz-box-shadow: 0 2px 2px rgba(0,0,0,.1);  box-shadow: 0 2px 2px rgba(0,0,0,.1);}.fixed-nav-appear{top:0;}

 

以上就是怎么用js實現鼠標向上滾動時浮動導航的示例代碼,感興趣可以參考下。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 玛沁县| 通榆县| 疏附县| 博野县| 南部县| 无为县| 临城县| 满洲里市| 嵊泗县| 南华县| 广东省| 克山县| 武功县| 凉城县| 奎屯市| 临桂县| 浦江县| 石泉县| 德江县| 纳雍县| 淮南市| 饶阳县| 吉水县| 禹州市| 长宁区| 大同市| 克拉玛依市| 庄浪县| 宜兰市| 奉化市| 鸡东县| 安图县| 拜泉县| 谷城县| 古浪县| 佛冈县| 扶余县| 布尔津县| 六安市| 永定县| 盐亭县|