jQuery實(shí)現(xiàn)帶滾動(dòng)線條導(dǎo)航效果的方法
本文實(shí)例講述了jQuery實(shí)現(xiàn)帶滾動(dòng)線條導(dǎo)航效果的方法。分享給大家供大家參考。具體分析如下:
最早見(jiàn)到這種導(dǎo)航是在魅族的官網(wǎng),當(dāng)時(shí)(去年)覺(jué)得挺不錯(cuò)的但自己不會(huì)JavaScript,因此那時(shí)“可望而不可及”。今日去手機(jī)QQ for Android官網(wǎng),又發(fā)現(xiàn)類(lèi)似這樣的導(dǎo)航,反正自己也沒(méi)啥事,所以就嘗試用jQuery做出這樣的效果。
效果如下:
首頁(yè)
說(shuō)說(shuō)
日志
相冊(cè)
CSS:
body,ul,li{margin:0;padding:0;} #testnav{;height:80px;background:#333;} .testmenu{width:320px;padding-top:45px;margin:0 auto;} .testbox div{float:left;width:80px;height:30px;text-align:center;} .testbox a{color:#ccc;text-decoration:none;font:700 12px/1 "宋體";} .testbox a:hover{color:#CCEEFF;text-decoration:underline;} .testline-box{width:100%;background:#eee;} .testline{display:block;height:3px;width:80px;background:#999;}
HTML:
<div id="testnav"> <div class="testmenu"> <div class="testbox"> <div><a href="javascript:void(0)">首頁(yè)</a></div> <div><a href="javascript:void(0)">說(shuō)說(shuō)</a></div> <div><a href="javascript:void(0)">日志</a></div> <div><a href="javascript:void(0)">相冊(cè)</a></div> </div> <div style="clear:both;"></div> <div class="testline-box"> <span class="testline"></span> </div> </div> </div>
jQuery:
var $line=$("span.testline"); var $w=$(".testbox > div").width(); var m=0; $(".testbox > div").each(function(n){ var x=$w*n; $(this).mouseenter(function(){ $line.stop(true,true).animate({"margin-left":x},"slow","easeOutBack"); }); $("a",this).click(function(){ m=x; }); }); $(".testbox").mouseleave(function(){ $line.stop(true,true).animate({"margin-left":m},"slow","easeOutBack"); });
代碼寫(xiě)的比較粗糙,再加上自己水平有限,或許您可以簡(jiǎn)化寫(xiě)的更好(反正大致思路應(yīng)該就是這樣+_+)。
注意:代碼中使用了easing插件的效果。記得要去下載并引用這個(gè)插件。如果不想使用easing插件則可將JS中的“easeOutBack”刪掉或者換成“swing”。
demo中的菜單的鏈接地址我使用了javascript:void(0)代替,主要目的是為了方便演示效果。在實(shí)際運(yùn)用中,我們可以根據(jù)當(dāng)前的url來(lái)判斷當(dāng)前所在位置,確定位置之后再重新給JavaScript中變量m賦值,從而能確定線條應(yīng)處于哪個(gè)菜單下。當(dāng)然肯定還有其他方法來(lái)判斷當(dāng)前位置。
希望本文所述對(duì)大家的jQuery程序設(shè)計(jì)有所幫助。
- jQuery 頂部導(dǎo)航跟隨滾動(dòng)條滾動(dòng)固定浮動(dòng)在頂部
- jquery scrollTop方法根據(jù)滾動(dòng)像素顯示隱藏頂部導(dǎo)航條
- 基于jquery實(shí)現(xiàn)頁(yè)面滾動(dòng)時(shí)頂部導(dǎo)航顯示隱藏
- jquery實(shí)現(xiàn)的一個(gè)導(dǎo)航滾動(dòng)效果具體代碼
- jquery編寫(xiě)Tab選項(xiàng)卡滾動(dòng)導(dǎo)航切換特效
- 基于jquery固定于頂部的導(dǎo)航響應(yīng)瀏覽器滾動(dòng)條事件
- jQuery實(shí)現(xiàn)帶滾動(dòng)導(dǎo)航效果的全屏滾動(dòng)相冊(cè)實(shí)例
- jQuery實(shí)現(xiàn)背景彈性滾動(dòng)的導(dǎo)航效果
- jQuery實(shí)現(xiàn)導(dǎo)航滾動(dòng)到指定內(nèi)容效果完整實(shí)例【附demo源碼下載】
- jQuery滾動(dòng)監(jiān)聽(tīng)實(shí)現(xiàn)商城樓梯式導(dǎo)航效果
- 使用jQuery.Pin垂直滾動(dòng)時(shí)固定導(dǎo)航
- jQuery實(shí)現(xiàn)的粘性滾動(dòng)導(dǎo)航欄效果實(shí)例【附源碼下載】
相關(guān)文章
基于jquery實(shí)現(xiàn)圖片上傳本地預(yù)覽功能
這篇文章主要介紹了基于jquery實(shí)現(xiàn)圖片上傳本地預(yù)覽功能的相關(guān)資料,需要的朋友可以參考下2016-01-01深入學(xué)習(xí)jQuery Validate表單驗(yàn)證
這篇文章主要針對(duì)jQuery Validate表單驗(yàn)證為大家進(jìn)行詳細(xì)介紹,如何在class屬性里面并定義錯(cuò)誤信息的提示,感興趣的小伙伴們可以參考一下2016-01-01jQuery實(shí)現(xiàn)多張圖片上傳預(yù)覽(不經(jīng)過(guò)后端處理)
本篇文章主要介紹了jQuery實(shí)現(xiàn)多張圖片上傳預(yù)覽(不經(jīng)過(guò)后端處理)的相關(guān)知識(shí)。具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧2017-04-04jQuery構(gòu)造函數(shù)init參數(shù)分析
這篇文章主要介紹了jQuery構(gòu)造函數(shù)init參數(shù)分析,今天主要是分析一下jQuery中init選擇器構(gòu)造函數(shù),處理選擇器函數(shù)中的參數(shù),感興趣的朋友可以了解下2015-05-05jquery計(jì)算鼠標(biāo)和指定元素之間距離的方法
這篇文章主要介紹了jquery計(jì)算鼠標(biāo)和指定元素之間距離的方法,涉及jQuery針對(duì)頁(yè)面位置屬性與鼠標(biāo)事件的相關(guān)操作技巧,需要的朋友可以參考下2015-06-06基于jquery實(shí)現(xiàn)發(fā)送文章到手機(jī)的代碼
這篇文章主要介紹了基于jquery實(shí)現(xiàn)發(fā)送文章到手機(jī)的代碼,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2014-12-12jQuery flip插件實(shí)現(xiàn)的翻牌效果示例【附demo源碼下載】
這篇文章主要介紹了jQuery flip插件實(shí)現(xiàn)的翻牌效果,可實(shí)現(xiàn)類(lèi)似卡羅牌翻頁(yè)的視覺(jué)效果,涉及jquery.flip.min.js插件的使用,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2016-09-09Jquery+Ajax實(shí)現(xiàn)跨域訪問(wèn)
這篇文章介紹了Jquery實(shí)現(xiàn)Ajax跨域訪問(wèn)的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-05-05