uniapp小程序,胶囊图兼容

该代码段是用于获取小程序中菜单(胶囊)按钮的布局信息。如果uni.getMenuButtonBoundingClientRect方法可用,直接调用;否则,针对支付宝小程序和高德小程序进行特殊处理,计算其位置。在高德小程序中,考虑了statusBarHeight和titleBarHeight的差异。
摘要由CSDN通过智能技术生成
// 获取胶囊信息
// 绑定this
export function getMenuButtonBoundingClientRect() {
	// 默认
	let titleInfo = {}
	if(uni.getMenuButtonBoundingClientRect){
		// 获取胶囊信息
		titleInfo = uni.getMenuButtonBoundingClientRect()
	} else {
		// 支付宝系列,部分小程序胶囊方法不可用
		// #ifdef MP-ALIPAY
			titleInfo = {
				bottom: 85,
				height: 32,
				left: 296,
				right: 383,
				top: 53,
				width: 87
			}
			
			// 高德小程序兼容
			if(uni.canIUse('gd')) {
				const systemInfo = uni.getSystemInfoSync()
				const barPaddding = (systemInfo.titleBarHeight - titleInfo.height)/2
				titleInfo.top = systemInfo.statusBarHeight + barPaddding
			}
		// #endif
	}
	return titleInfo
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值