问题描述:
H5首页banner图,在安卓微信内长按可识别二维码,但在ios部分机型上,长按图片识别不了二维码。
测试机型:
-
iphone6s plus 系统12.1 微信版本6.7.4
-
iphone7 系统12.0.1 微信版本6.7.4
问题排查:
- (1)将图片单独在微信中打开,长按可识别二维码,排除是图片模糊问题;
- (2)上网查资料,以下解决方案均无效
- 1、定位方式由absolute 改为传统的margin(据说绝对定位会导致这个问题);
- 2、修改viewport 上的maximum-scale大于1(网络上看到的解决方案);
- 3、网络上有说用position: fixed; 定位会导致这个问题 ;
- (3)网上此类问题资料很少,我们再从代码中查找问题,经反复实验之后,发现代码中用到了window.history.replaceState(null, null, newUrl);以及window.location.href=newUrl,将此类代码注释掉,发现二维码可识别。
问题解决:
哈哈,目前还没找到解决办法,replaceState和window.location.href因业务需要,不可删除。期待广大网友给出办法。