场景:后端直接返回链接,前端跳转链接,可跳支付宝支付
window.location.href = res.data.payUrl
结果:返回后,页面明显变大
检查:在网上找资料,说设置meta,但是代码里面已经是设置好的
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, viewport-fit=cover">
处理方案:视口变大,页面样式是用的rem,页面变大后根元素是变大了,因此页面会变大。
在main.js,监听页面是否显示,则重置一下根元素。代码如下:
// 解决ios手机点播支付包支付返回页面变大的问题
const originFontSize = document.documentElement.style.fontSize
const isIos = /iphone|ipad|ipod/i.test(window.navigator.userAgent)
window.onpageshow = function() {
// 判断是不是ios手机
if (isIos) {
document.documentElement.style.fontSize = originFontSize
}
}