美文网首页
微信小程序在view弹层外部关闭view

微信小程序在view弹层外部关闭view

作者: AI时代岁月笔记 | 来源:发表于2020-03-25 15:37 被阅读0次

用阻止冒泡的方法实现

开发商城小程序有个需求,规格的选择采用view组件作弹层,当点view外部的区域可以关闭这个view弹层。

这个需求可以通过阻止冒泡来实现。

1. 在小程序的父容器view上设置bindtap事件。(mpvue对应为@tap)

2. 在子view,即弹层的view上设置catchtap事件就可以了。(mpvue对应为@tap.stopp)

参考文档:

微信小程序bindtap与catchtap的区别

mpvue小程序catchtap使用


用遮罩层的方法实现

上面介绍的方法可以实现需求,但参考京东、淘宝选择规格的弹层的关闭皆是借用遮罩层的方法去实现。大体方法是这样的:

1. 遮罩层view, 并加关闭的tap事件。css中设置top,left, 绝对定位、长宽100%及opacity=0.5、z-index、背景黑色

2. 弹层view(与遮罩层view是同级关系), z-index大于遮罩层的,宽100%,高设个比例,背景白色,绝对定位于下方

3. vue设个控制显示与隐藏的变量,

相关文章

网友评论

      本文标题:微信小程序在view弹层外部关闭view

      本文链接:https://www.haomeiwen.com/subject/yifxuhtx.html