开放、分享、自由、中立、公平网吧论坛公众号APP(送下载币任务) 微信公众号

天下网吧论坛

 找回密码
 注册账号

QQ登录

只需一步,快速开始

用微信登录

扫一扫,用微信登录

查看: 1472|回复: 1
收起左侧

[经验分享] 微信小程序textarea层级高各种穿透modal和tabBar的解决方法

[复制链接]
发表于 2020-8-5 10:38:49 | 显示全部楼层 |阅读模式 发布于:福建省福州市仓山区 电信
textarea是navite组件,就是所谓的系统原生组件。什么是系统原生组件?就是系统内核直接提供的组件。系统组件的层级会比普通的组件层级高
无论你怎么设置z-index属性,都无法覆盖原生组件,除非这个原生组件已经支持同层级别渲染了。
目前textarea组件还是无法「同层渲染」所以textarea会带来各种「穿透」问题
比如你写了一个z-index的最高级别的modal,一个蒙版。如果蒙版下面有一个textarea组件,里面有值,那么你在真机上显示这个蒙版时,你预期的效果是蒙版完整的覆盖所有内容,事实上你会发现textare无敌穿透了这个蒙版显示给用户看了
同样的情况会发生在自定义tabBar和navigateBar上面,这样textarea一穿透出来就会非常影响整个页面的效果。
如果解决这个问题?
目前有几个思路:
1、不用textarea组件,改用其他的支持同层渲染的组件代替
2、根据实际情况,在可能会出现穿透情况时实时隐藏textarea,比如wxml里面使用wx:if="{{showTextArea}}"这样的判断来隐藏textarea
比如要showModal之前,咱们先把textarea组件先隐藏起来,设置showTextArea为false,modal执行完相关逻辑后再设置showTextArea为true.
3、其他方法,也是根据1,2延伸出来的方法。
微信小程序textarea层级高各种穿透modal和tabBar的解决方法_天下网吧APP_网吧网咖APP

赶紧来设置你的签名->玩转天下网吧论坛签名

发表于 2020-8-5 11:48:14 | 显示全部楼层 发布于:广东省东莞市 电信IDC业务段
感谢分享。

赶紧来设置你的签名->玩转天下网吧论坛签名

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号   扫一扫,用微信登录

本版积分规则

下载天下网吧手机APP,直接一键登录
您尚未登录,请登陆后浏览更精彩内容!
 注册账号
找回密码

手机版|纯文字版|联系我们|免责声明|网吧论坛 ( __ICP号__ )

GMT+8, 2024-4-20 03:55 , Processed in 1.372765 second(s), 36 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表