解决方案,我总结了以下几种
1、控制底部根目录scroll-view 的scroll-y属性的true/false,控制底部滚动以及不滚动
2、在自定义弹框最外层元素加上catchtouchmove=’true’ ;或者catchtouchmove="preventTouchMove"
Pages({
preventTouchMove() {}
})
注意!!!,使用场景!!!
适用于自定义内弹框不包含scroll-view 情况下;
此时底部根目录可以不为scroll-view 也可以生效
而且必须真机测试,电脑客户端不行
3、底部最外层scroll-view 的scroll-y属性恒为true
css height 100vh
自定义弹框只需要position:fixed。底层就不会滚动了,这个应该是最近几个版本微信更新了,自定义弹窗的滚动事件不会冒泡到底部scroll-view了
原文:https://blog.csdn.net/gzyzwx/article/details/82219369?utm_source=copy
我是借鉴第三种:因为我的自定义弹窗中有scroll-view的存在前两种不好使,
//下面是最外层的view,当显示弹窗的时候用了另外一个样式,不显示弹窗的时候用原始的样式
<scroll-view class='{{showBuyCon ? "page-con-showbuy" : "page-con"}}'>
css 最外层view样式:
.page-con{
/* overflow-y: hidden; */
/* background-color: #000; */
/* z-index: -1; */
overflow: hidden;
}
.page-con-showbuy{
height: 100vh;
}
成功解决问题