第一种方式:

页面最外层的盒子,使用绝对定位!这样页面也就不能滑动了!此方法呢,比较麻烦,写的代码比较多!但是还是能够实现的!源码如下:

 position: fixed;
  top:0;
  left:0;

第二种方式:

在微信小程序app.json的window中,添加”disableScroll”:true,但是要注意,如果你是要在app.json中添加disableScroll,会导致所有页面无法上下滑动,这就是个大bug了,解决也很简单,你想在那个页面禁止页面滑动,就在哪个页面的json下,添加disableScroll就可以了,单独设置就行!代码如下:

//app.json中添加,window里面添加就可以了
  "window": {
    "disableScroll": true
  },
  
  //单独设置,比如index下,就在index.json设置
  {
    "navigationBarTitleText": "首页",
    "disableScroll":true
  }

但是有些时候使用disableScroll并不合适,比如一个长页面,我需要弹窗出来的时候,才禁止上下滑动,弹窗隐藏的时候,又可以上下滑动!那就衍生第三个方式

第三种方式:

在弹窗的遮罩层或者内容层的view上,添加catchtouchmove=’true’,这个意思就是,你添加了catchtouchmove view的盒子,用户如果在这个盒子滑动的时候,是不能触发滑动效果的,一定要看清楚字面意思,不然会写错view,导致无效果哦!代码如下:

//弹窗遮罩层
<view  catchtouchmove='true'>
</view>

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐