vue微信遮罩层提示在浏览器中打开

遇到一个需求,就是扫描二维码跳转到一个h5页面从而下载app,但是我们不能在微信下载这个app,所以得弹出这个遮罩层,提示使用浏览器打开。

其实思路是特别简单的,先判断是不是在微信环境,是安卓环境还是ios环境,在created的时候进行判断:

const { userAgent } = navigator
const isWeixin = !!/MicroMessenger/i.test(userAgent)
this.isAndroid =
  userAgent.indexOf('Android') > -1 || userAgent.indexOf('Adr') > -1
this.isMac = !!userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/)
if (isWeixin) {
//如果是微信环境,就弹出遮罩层
  this.showTip = true
}

然后在对应的vue文件中,正常显示的代码之外加上这么一段代码(如果有图片更好,还可以根据是安卓还是IOS有不同的提示):

在微信中无法下载APP
1. 请点击右上角按钮
2. 选择【在浏览器中打开】

对应的样式

.wxtip {
  background: rgba(0, 0, 0, 0.8);
  text-align: center;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  display: none;

  img {
    width: 100%;
  }
}

.wxtip-txt {
  margin-top: 107px;
  color: #fff;
  font-size: 20px;
  line-height: 1.8;
}

重点就是z-index的层级一定要比原来的层级高!

你可能感兴趣的:(vue微信遮罩层提示在浏览器中打开)