解决小程序滚动穿透问题

背景

实现一个模态框基本都没有问题,但是,当模态框里边的内容滚动起来以后,就会出现各种各样的让人摸不着头脑的问题,其中,最出名的想必就是滚动穿透。并且有时候小程序的模态框滚动在H5没有问题,但是在小程序中就会出现滚动穿透的问题(可能跟单独封装的uni-popup组件也有关)

什么是滚动穿透?

滚动穿透的定义:指我们滑动顶层的弹窗,但效果上却滑动了底层的内容。

例如:使用uni-popup弹出层组件,里边封装了picker-view滑动选择器,可以滑动选择地址或者时间等等,但是当打开弹出层进行滑动的时候,弹出层的内容没有滑动,打开弹出层的当前页面却滑动了,也就是滑动了底层内容。

具体解决方案分析如下:

父组件(滑出弹出层的页面)加入以下代码:

html 复制代码
<template>
  <page-meta :page-style="'overflow:' + (show ? 'hidden' : 'visible')"></page-meta>
  <view>页面内容<view>
 </template>
 <script>
 export default{
   data(){
     return {
     show: false, // 控制页面滚动,在打开弹窗的事件中,改变该变量值为true
     }
   }
 }
 </script>

封装的子组件示例:

html 复制代码
<template>
  <view>
    <uni-popup>
      <picker-view>
        <picker-view-column>
            <view>需要滚动选择的页面内容    </view>
         </picker-view-column>
      </picker-view>
    </uni-popup>
  <view>
 </template>
 <script>
 export default{
   data(){}
 }
 </script>

若有其他方案,欢迎讨论

相关推荐
m0_587383006 小时前
深圳 24 小时自助健身房系统软件开发实战指南与案例解析
java·spring boot·小程序·架构·需求分析
2501_915909069 小时前
iOS应用从开发到上架App Store的完整发布流程与步骤指南
android·ios·小程序·https·uni-app·webview
扶风ff9 小时前
练题簿在线免费刷题:会员线下组卷、Word 试卷与成绩导入,课堂检测更方便
java·开发语言·算法·小程序·word
镭封10 小时前
做电视剧解说视频用什么软件?配音、文案处理一次解决
人工智能·小程序·音视频·语音识别·媒体
闹小艾10 小时前
制作题库练题小程序如何选择搭建平台?3大主流平台优缺点,新手选型不踩坑
小程序
小码哥06810 小时前
陪诊小程序系统开发:开启医疗陪护新时代
小程序·陪诊·陪护·陪诊陪护·医院陪诊系统·陪诊系统·陪诊管理
扶风ff11 小时前
练题簿在线免费刷题:创建个人任务,把刷题、听题和模考目标放到每天的学习中
开发语言·javascript·学习·小程序
andrsted13 小时前
练题簿在线免费刷题:听读练题支持暂停续播、循环播放,让自己的题库听得更方便
学习·微信小程序·小程序·刷题·在线刷题
weixin_422201301 天前
如何解决小程序图标点击热区小,落点不准问题?
前端·小程序·样式·点击热区·扩大