中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

js實現樓層導航功能

發布時間:2020-10-21 14:40:55 來源:腳本之家 閱讀:205 作者:開發之路 欄目:web開發

圖如下所示:

js實現樓層導航功能

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');
  }
}

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

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

余江县| 房山区| 自贡市| 外汇| 西林县| 滦南县| 怀来县| 白河县| 仙居县| 于田县| 宝清县| 登封市| 澄迈县| 南昌市| 平南县| 浦北县| 台南县| 高阳县| 手游| 耿马| 刚察县| 汉沽区| 改则县| 华蓥市| 张家界市| 南城县| 信阳市| 翁源县| 汕尾市| 上犹县| 定边县| 内黄县| 库伦旗| 丰都县| 肇州县| 武胜县| 滦平县| 安吉县| 民乐县| 喀喇沁旗| 涪陵区|