微信小程序input、textarea层级过高穿透的问题解决 微信小程序原生组件camera.canvas.input(仅在focus时表现为原生组件).live-player.live.pusher.map.textarea.video的层级是最高的,页面中的其他组件无论设置 z-index 为多少,都无法盖在原生组件上. 从图中效果可
微信小程序原生组件camera、canvas、input(仅在focus时表现为原生组件)、live-player、live、pusher、map、textarea、video的层级是最高的,页面中的其他组件无论设置 z-index 为多少,都无法盖在原生组件上。
从图中效果可以看出input输入的内容穿透到了选择列表自定义组件,解决办法:
1、使用if,当触发选择列表时隐藏input或textare组件,选择完成点击确认关闭选择列表,显示input或textare。
2、选择列表自定义组件使用 cover-view 和 cover-image 组件代替view和image,cover-view 和 cover-image 组件,可以覆盖在部分原生组件上面。
<cover-view class="cover-view" style="{{height}}" wx:if="{{isShowModel}}">
<cover-view class="selectModel">
<cover-view class="model" @tap="onShowOrHideModel()"></cover-view>
<cover-view class="modelBox">
<cover-view class="title">{{title}}(可多选)</cover-view>
<cover-view class="list">
<block wx:for="{{waitClassifyNamesList}}" wx:key="{{index}}">
<cover-view class="li" @tap="onClickSelect({{item.optionCode}})">
<cover-image wx:if="{{filter.isInclude(item.optionCode,classifyIds)}}" class="icon" src="/image/signatory/selected.png"></cover-image>
<cover-image class="icon" src="/image/signatory/unSelect.png" wx:else></cover-image>
<cover-view class="name">{{item.optionName}}</cover-view>
</cover-view>
</block>
</cover-view>
<cover-view class="btn" @tap="onSubmitSelectService">确认</cover-view>
</cover-view>
</cover-view>
</cover-view>
两种方式的实现效果如上图,至于选择何种方式,根据实际需求来选择。
到此这篇关于微信小程序input、textarea层级过高穿透的问题解决的文章就介绍到这了,更多相关小程序input、textarea穿透内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
本文标题为:微信小程序input、textarea层级过高穿透的问题解决
基础教程推荐
- 我可以在浏览器中与Babel一起使用ES模块,而不捆绑我的代码吗? 2022-01-01
- 用于 Twitter 小部件宽度的 HTML/CSS 2022-01-01
- Chart.js 在线性图表上拖动点 2022-01-01
- 自定义 XMLHttpRequest.prototype.open 2022-01-01
- Electron 将 Node.js 和 Chromium 上下文结合起来意味着 2022-01-01
- Vue 3 – <过渡>渲染不能动画的非元素根节点 2022-01-01
- html表格如何通过更改悬停边框来突出显示列? 2022-01-01
- 直接将值设置为滑块 2022-01-01
- 如何使用TypeScrip将固定承诺数组中的项设置为可选 2022-01-01
- 如何使用JIT在顺风css中使用布局变体? 2022-01-01