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

首頁 > 編程 > JavaScript > 正文

js實現樓層導航功能

2019-11-19 17:26:48
字體:
來源:轉載
供稿:網友

圖如下所示:

1.點擊跳轉到相應區域:

頁面scroll掉的距離 = 目標板塊在文檔中的垂直坐標 - 起始板塊(目標位置)到視圖頂部的距離;

  document.body.scrollTop = scrollLength;   document.documentElement.scrollTop = scrollLength;

2.滾動滾動條時對應的導航鏈接被激活

每個板塊的導航鏈接對應一個長度區間,當滾動條滾動調的長度落在該區間時,該導航條則被選中。區間范圍為當前板塊的scrollTop值(包含)~下一板塊的ScrollTop值(不包含)。

例如:第一板塊的區間為0~第二板塊的scrollTop值(即第一板塊的高度),當滾動條滾動的距離落在該區間時,則第一個鏈接激活。

如何確定區間?將鏈接倒敘排列,依次循環判斷,第一個(滾動條滾動的距離>區間最小值)成立的鏈接即為激活鏈接。

var currIndex=0;window.onscroll = function () {  var $cptop = $('.cp-top');  var scrollLength = document.documentElement.scrollTop || document.body.scrollTop; //滾動條滾動的距離  var list_area = _.map($('#area li.group'), function (item, index) {      return { top: item.offset().top, index: index };   }); //所有的板塊   list_area = _.sortBy(list, function (item) { return -item.index; }); //倒序  var reachedArea = _.find(list_area, function (item) {     return scrollLength >= item.top;   });    //滾動的距離大于該區間的最小top值  if (currIndex != reachedArea.index) {      currIndex = reachedArea.index;      $(".navField li").removeClass('selected');      $(".navField li").eq(reachedField.index).addClass('selected');  }}

以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持武林網!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 乐都县| 潢川县| 资溪县| 红安县| 永平县| 金坛市| 怀远县| 崇阳县| 怀远县| 环江| 根河市| 阿拉善左旗| 鹤山市| 兰西县| 枝江市| 屏东县| 安图县| 城口县| 揭西县| 乐都县| 广汉市| 蓬安县| 横山县| 宜川县| 乐山市| 凌海市| 如东县| 云南省| 沙河市| 洱源县| 宁蒗| 怀集县| 合作市| 武城县| 柏乡县| 汽车| 宁河县| 视频| 灵武市| 东兴市| 通河县|