亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

怎么使用原生javascript實現的全屏滾動功能

發布時間:2021-04-13 13:48:16 來源:億速云 閱讀:207 作者:小新 欄目:web開發

這篇文章主要介紹了怎么使用原生javascript實現的全屏滾動功能,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

具體如下:

原理:

1. 計算當前瀏覽器屏幕高度,每次翻頁顯示的內容高度即為屏幕高度

2. 對鼠標滾輪事件進行監聽,注意滾輪事件的瀏覽器兼容問題。

廢話不多說,直接上代碼

html代碼:

<div id="wrap">
  <div id="main" >
    <div class="content num1">
      <img src="https://cache.yisu.com/upload/information/20200622/114/64924.jpg" width="100%" height="100%">
    </div>
    <div class="content num2">
      <img src="https://cache.yisu.com/upload/information/20200622/114/64928.jpg" width="100%" height="100%">
    </div>
    <div class="content num3">
      <img src="https://cache.yisu.com/upload/information/20200622/114/64929.jpg" width="100%" height="100%">
    </div>
    <div class="content num4">
      <img src="https://cache.yisu.com/upload/information/20200622/114/64930.jpg" width="100%" height="100%">
    </div>
  </div>
</div>

css代碼:

#wrap{overflow: hidden;width: 100%;}
#main{top: 0;position: relative;}
.content{width: 100%;margin: 0;height: 100%;}
.num1{background: #e8e8e8;}
.num2{background: pink;}
.num3{background: yellow;}
.num4{background: orange;}

js代碼:

<script type="text/javascript">
  var wrap = document.getElementById("wrap");
  var divHeight = window.innerHeight;
  wrap.style.height = divHeight + "px";
  var content = $(".content");//懶得寫獲取類的原生js代碼了,直接用了jquery,=。=
  content.height(divHeight);
  var startTime = 0, //開始翻屏時間
    endTime = 0,
    now = 0;
  if ((navigator.userAgent.toLowerCase().indexOf("firefox")!=-1)){
    //for firefox;
    document.addEventListener("DOMMouseScroll",scrollFun,false);
  }
  else if (document.addEventListener) {
    document.addEventListener("mousewheel",scrollFun,false);
  }
  else if (document.attachEvent) {
    document.attachEvent("onmousewheel",scrollFun);
  }
  else{
    document.onmousewheel = scrollFun;
  }
  //滾動事件處理函數
  function scrollFun(event){
      startTime = new Date().getTime();
      var delta = event.detail || (-event.wheelDelta);
      if ((endTime - startTime) < -1000) {
        //1秒內執行一次翻頁
        if (delta > 0 && parseInt(main.style.top) > -divHeight * ( content.length - 1)) { //向下翻頁
          now += divHeight ;
          turnPage(now);
        }
        if (delta < 0 && parseInt(main.style.top) < 0) { //向上翻頁
          now -= divHeight ;
          turnPage(now);
        }
        endTime = new Date().getTime();
      }
      else{
        event.preventDefault();
      }
  }
  //翻頁函數
  function turnPage(now){
    $("#main").animate({top:(-now+'px')},1000);
    //懶得寫動畫代碼了,直接用了jquery,=。=
  }
</script>

感謝你能夠認真閱讀完這篇文章,希望小編分享的“怎么使用原生javascript實現的全屏滾動功能”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

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

AI

兴海县| 会宁县| 云霄县| 望江县| 醴陵市| 宝丰县| 京山县| 伊金霍洛旗| 安泽县| 外汇| 塔城市| 乐山市| 界首市| 拉萨市| 辽源市| 玉树县| 宝山区| 长武县| 高唐县| 大英县| 大宁县| 丰台区| 南开区| 永登县| 宝应县| 安义县| 滕州市| 洞头县| 朝阳区| 新竹市| 龙门县| 泰和县| 长子县| 略阳县| 南安市| 沈阳市| 嵩明县| 远安县| 扎赉特旗| 尖扎县| 文登市|