微信H5禁止下拉 且可下滚动指定区域

Posted saving

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信H5禁止下拉 且可下滚动指定区域相关的知识,希望对你有一定的参考价值。

 var app = document.getElementsByClassName("tree-hole-room-messages")[0];
    var touchstartY;
    app.addEventListener(
      "touchstart",
      function(event) 
        console.log(1);
        var events = event.touches[0] || event;
        touchstartY = events.clientY; //获取触摸目标在视口中的y坐标
      ,
      false
    );

    app.addEventListener(
      "touchmove",
      function(event) 
        var events = event.touches[0] || event;
        //注意app.scrollTop始终为0
        var scrollTop = app.scrollTop || document.documentElement.scrollTop; //获取滚动部分的高度
        var clientHeight = document.documentElement.clientHeight; //获取手机屏幕高度(可视部分高度)
        var scrollHeight = app.scrollHeight; //所有内容的高度
        if (
          events.clientY > touchstartY &&
          scrollTop === 0 &&
          event.cancelable
        ) 
          event.preventDefault(); //禁止到顶下拉
         else if (
          scrollTop + clientHeight > scrollHeight &&
          event.cancelable
        ) 
          // event.preventDefault(); //禁止到底上拉
        
      ,
      false
    );

  

代码实现在tree-hole-room-messages这个滚动区域内下拉不会出现。

且可用滚动这个区域

以上是关于微信H5禁止下拉 且可下滚动指定区域的主要内容,如果未能解决你的问题,请参考以下文章

禁止微信内h5网页下拉

微信h5页面下拉露出网页来源的解决办法

微信h5页面下拉露出网页来源的解决办法

uniapp 禁止滚动穿透(一般用于遮罩)-小程序/app/h5适用

Vue禁止h5页面iOS浏览器下拉bounce效果

禁止微信内的H5页面上下拖动