uniapp 微信小程序uview2.0 u-popup弹出层弹出在遮罩层不影响卡片正常勾选的情况下实现点击空白区域关闭弹层

如图所示,在底部弹出层出现的时候希望点击卡片能够正常勾选。同时点击空白区域又可以关闭底部弹层,如果使用u-popup自带的遮罩层可以实现点击但是不可以实现勾选,实现勾选不能实现关闭。解决办法就是使用**@touchend.stop来代替点击事件,并在子元素上使用@touchend.stop**来阻止冒泡事件产生,附上代码大家可以参考。

html 复制代码
	<view class="container" @touchend.stop="endShake()">
		<view class="card-box">
			<u-checkbox-group shape="circle" @change="checkboxChange()" activeColor="#3d80fc" iconSize="32" size='32'>
				<view :class="['card-item', 'shadow', shake ? `shake-${item.runStatus}` : `status-${item.runStatus}`]"
					@touchstart.prevent="gtouchstart(item)" @touchend.stop="gtouchEnd(item)" @touchmove.stop="gtouchmove()"
					v-for="item in cardInfo" :key="item.id">
					<view class="info-box" v-if="!shake">
						<PowerChart :value="item.voltage" />
						<SignalChart :value="item.rssi" />
					</view>
					<view class="info-box" style="z-index: 99;" v-else>
						<u-checkbox :name="item.id"></u-checkbox>
					</view>
					<image :src="'/static/images/'+ item.imgpath" mode=""></image>
					<view>{{item.name}}</view>
					<view v-if="item.runStatus == 10" class="mask"></view>
				</view>
				<view class="card-add shadow" @touchend.stop="toAdd()">
					<image src="/static/images/card-add.png" mode=""></image>
					<view>添加设备</view>
				</view>
			</u-checkbox-group>
		</view>
		
		<!-- <u-popup :show="shake" :round="10" mode="bottom" :overlayOpacity="0" @close="closeShake"> -->
		<u-popup :show="shake" :round="10" mode="bottom" :overlay="false " @close="closeShake">
			<view class="bom-box">
				<view class="item-bom" @click="removeDevice()">
					<u-icon name="trash" size="36"></u-icon>
					删除
				</view>
				<view class="item-bom" @click="famshow()">
					<u-icon name="list" size="36"></u-icon>
					分配
				</view>
			</view>
		</u-popup>
		
		<u-popup :show="show" :round="10" mode="bottom" @close="close">
			<scroll-view @scrolltolower="onScrolltolower" class="scroll-view" scroll-y>
				<view class="item-txt" @click="famClick(item)" v-for="(item,index) in famList" :key="index">{{item.name}}</view>
			</scroll-view>
		</u-popup>

		<image class="bgimg" src="../../static/images/home-bg.png" mode=""></image>
		<m-tabbar v-if="!shake" fixed fill current="0" :tabbar="DefaultTabbarConfig"></m-tabbar>

	</view>
相关推荐
东东5169 小时前
xxx食堂移动预约点餐系统 (springboot+微信小程序)
spring boot·微信小程序·小程序·毕业设计·个人开发·毕设
Rysxt_10 小时前
UniApp五大UI框架与uni-ui核心区别对比
uni-app·uni-ui
2501_9159184111 小时前
HTTPS 代理失效,启用双向认证(mTLS)的 iOS 应用网络怎么抓包调试
android·网络·ios·小程序·https·uni-app·iphone
2501_9151063214 小时前
混合应用(Hybrid)安全加固,不依赖源码对成品 IPA 混淆
android·安全·小程序·https·uni-app·iphone·webview
00后程序员张15 小时前
无需越狱,来对 iOS 设备进行调试、管理与分析
android·ios·小程序·https·uni-app·iphone·webview
芒果大胖砸15 小时前
uniapp当中如何实现长按复制功能并且能够自由选择内容
开发语言·javascript·uni-app
00后程序员张15 小时前
在 iOS 上架中如何批量方便快捷管理 Bundle ID
android·ios·小程序·https·uni-app·iphone·webview
韩立学长15 小时前
【开题答辩实录分享】以《智慧校园平台微信小程序》为例进行选题答辩实录分享
spring boot·微信小程序·小程序
h_654321015 小时前
微信小程序:按顺序一张图片加载完后,再加载另一张
微信小程序·小程序
换日线°15 小时前
uni-app对接腾讯即时通讯 IM
前端·uni-app