解决微信小程序中的滚动穿透问题
网络编程 2021-07-04 15:01www.168986.cn编程入门
这篇文章主要介绍了解决微信小程序中的滚动穿透问题,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
Mask-Scroll
>
蒙层防穿透问题
> 蒙层穿透就是,当你用fixed 布局让蒙层显示的时候, 手指滑动屏幕会出现底部内容也滑动的现象. 如图
当蒙层出现的时候,你滚动屏幕,底部内容也一起跟着滚动。 这就是蒙层穿透, 也可以叫 '滚动穿透'. 出现这种情况, 用户体验是不好的了。 所以作为一个有点追求的工程师是不允许这种情况的发生了(手动狗头...)
## 解决方案
这种要分情况,
- 当蒙层没有滚动条的时候。
- 当蒙层出现滚动条的时候
1. 当弹窗没有滚动条的时候。
直接监听 catch:touchmove 方法, 然后直接返回就可以了。
代码可以去看目录下的文件
主要代码
// wxml <view class="fixed-mask" bind:tap="hideMsak" wx:if="{{isShowMask}}" catch:touchmove="sMove"> <view class="mask-container" > <view class="mask__item"> I am {{dogName}} </view> </view> </view> // css .fixed-mask { position: fixed; left: 0; : 0; height: 100vh; width: 100vw; background: #333; opacity: 0.8; z-index: 2; } .mask-container { position: absolute; : 50%; left: 50%; transform: translate(-50%, -50%); } .mask__item { margin: 0 auto; background-color: #ff0015; text-align: center; width: 500rpx; height: 500rpx; line-height: 500rpx; margin-bottom: 20rpx; } // js sMove () { return; }
效果如下
上面是当弹窗没有滚动条的情况, 当弹窗出现滚动条的时候。
哦豁, 完蛋, 弹窗不能滚动了。
2. 当弹窗有滚动条的时候
方法一
动态给底部滚动的元素 添加固定定位。也就是当出现弹窗的时候添加一个 class 样式类
效果如图
代码在文件夹。
// css .bottom-fixed { position: fixed; left: 0; : 0; overflow: hidden; } // wxml <view class="dog-container {{isShowMask ? 'bottom-fixed' : ''}}"></view>
大家可以看到 因为底部元素给固定到页面顶部了, 而不是你点击弹窗时出现的位置。目前自己还没有找到解决方法。 如果大佬有会的, 不吝赐教。。
方法二
> scroll-view 设置高度 以及纵向滚动方向。
不过scroll-view 会有一些bug
代码在文件夹
效果如下图
以上所述是长沙网络推广给大家介绍的解决微信小程序中的滚动穿透问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,长沙网络推广会及时回复大家的。在此也非常感谢大家对狼蚁SEO网站的支持!
如果你觉得本文对你有帮助,欢迎网络推广网站推广转载,烦请注明出处,谢谢!
编程语言
- 甘肃哪有关键词排名优化购买方式有哪些
- 甘肃SEO如何做网站优化
- 河南seo关键词优化怎么做电话营销
- 北京SEO优化如何做QQ群营销
- 来宾百度关键词排名:提升您网站曝光率的关键
- 卢龙关键词优化:提升您网站排名的策略与技巧
- 山东网站优化的注意事项有哪些
- 四川整站优化怎样提升在搜索引擎中的排名
- 疏附整站优化:提升网站性能与用户体验的全新
- 海南seo主要做什么工作售后服务要做到哪些
- 荣昌百度网站优化:提升您网站的搜索引擎排名
- 河北seo网站排名关键词优化如何做SEO
- 江西优化关键词排名推广售后保障一般有哪些
- 古浪SEO优化:提升你的网站可见性
- 西藏网站排名优化怎么把网站排名在百度首页
- 如何提升阳东百度快照排名:详尽指南