微信小程序弹窗禁止页面滚动

在这里插入图片描述

在小程序弹窗时,外部页面禁止滚动, 可以在最外部容器设置catchtouchmove
但是如果弹窗内部也需要滚动,需要用scroll-view包裹,并设置scroll-y
catchtouchmove需要接收个方法,不然会一直警告

<view class="box">占位</view>
<view class="pop" catchtouchmove="touchMove">
  <view class="popbg"></view>
  <view class="popup">
    <scroll-view scroll-y>
      <view class="row" wx:for="{
     
     {10}}" wx:key="index">{
   
   {index}}</view>
    </scroll-view>
  </view>
</view>
.box {
    
    
  height: 120vh;
}

.popbg {
    
    
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
}

.popup {
    
    
  position: fixed;
  top: 20%;
  left: 50%;
  transform: translate(-50%, 0);
  width: 70%;
  background: #fff;
  z-index: 1;
}

scroll-view {
    
    
  height: 500rpx;
}

.row {
    
    
  width: 100%;
  height: 200rpx;
}
Page({
    
    
  touchMove() {
    
    
    return
  }
})

猜你喜欢

转载自blog.csdn.net/AK852369/article/details/111991661