本文實例講述了jQuery網頁定位導航特效實現方法。分享給大家供大家參考,具體如下:
描述:左右聯動的導航,非常適合展示頁面內容多,區塊劃分又很明顯的,點擊右邊固定導航項時,左邊的內容跟著切換。滑動滾動條的時候,右邊的導航也隨著左邊的展示而進行高亮切換。
思路:比較滾動距離和樓層距離(相對于頂部),如果滾動距離大于等于樓層距離,即進入了相應樓層,然后通過一個變量來記錄該樓層的信息,最后傳遞給右邊高亮顯示
1.點擊右邊固定導航項時,左邊的內容跟著切換。
只需將右邊a的href設置為左邊區塊的id加上#即可
2.滑動滾動條的時候,右邊的導航也隨著左邊的展示而進行高亮切換。
核心代碼如下:
$(function(){ $(window).on("scroll",function(e){ var $floor=$("li[id^=floor]"); var $nav=$(".mui-lift-nav"); var floorId=""; var scrollTop=$(this).scrollTop(); $floor.each(function(index,Ele){ //index是每個樓層的索引,Ele是每個樓層節點的dom元素對象(這個對象是原生對象,不是jquery對象) var offsetTop=$(Ele).offset().top; //Ele給它一層封裝,必須加個美元符號,才能把它轉換為jquery對象 if(scrollTop>=offsetTop){ floorId="#"+$(this).attr("id"); }else{ return false; } }); $nav.filter("[href="+floorId+"]").addClass("mui-lift-cur-nav").siblings().removeClass("mui-lift-cur-nav"); //filter方法可以在一個集合里篩選出所要的元素 if(scrollTop<$floor.first().offset().top ||scrollTop>$floor.last().offset().top+$floor.last().height()){ $nav.removeClass("mui-lift-cur-nav"); } });})更多關于jQuery相關內容感興趣的讀者可查看本站專題:《jQuery切換特效與技巧總結》、《jQuery擴展技巧總結》、《jQuery常用插件及用法總結》、《jQuery拖拽特效與技巧總結》、《jQuery表格(table)操作技巧匯總》、《jquery中Ajax用法總結》、《jQuery常見經典特效匯總》、《jQuery動畫與特效用法總結》及《jquery選擇器用法總結》
希望本文所述對大家jQuery程序設計有所幫助。
新聞熱點
疑難解答