JavaScript 实现关闭浏览器、判断支付宝或微信内置浏览器

1、写入工具类文件 handleBrowser.js

// 判断是否为微信内置浏览器
export function isWeixinBrowser() {
  const agent = navigator.userAgent.toLowerCase();
  if (agent.match(/MicroMessenger/i) == "micromessenger") {
    return true; // 是
  } else {
    return false; // 否
  }
}

// 判断是否为支付宝内置浏览器
export function isAliBrower() {
  const agent = navigator.userAgent.toLowerCase();
  if (agent.match(/Alipay/i) == "alipay") {
      return true; // 是
  } else {
      return false; // 否
  }
}

// 关闭浏览器
export function CloseWebPage() {
  if (navigator.userAgent.indexOf("MSIE") > 0) {  // IE 浏览器
    if (navigator.userAgent.indexOf("MSIE 6.0") > 0) {
      window.opener = null;
      window.close();
    } else {
      window.open('', '_top');
      window.top.close();
    }
  } else if (navigator.userAgent.indexOf("Firefox") > 0) {  // 火狐浏览器
    window.location.href = 'about:blank ';   // 火狐默认状态不是 window.open 的页面,所以 window.close 是无效的
  } else {  // 其他常规浏览器
    window.opener = null;
    window.open('', '_self', '');
    window.close();
  }
}

2、引入并调用

import { isWeixinBrowser, isAliBrower, CloseWebPage } from './handleBrowser.js';

if (isWeixinBrowser()) {
  console.log('是微信内置浏览器');
  WeixinJSBridge.call('closeWindow');  // 微信内置浏览器关闭直接写该语句
} else if (isAliBrower()) {
  console.log('是支付宝内置浏览器');
  AlipayJSBridge.call('closeWebview');  // 支付宝内置浏览器关闭直接写该语句
} else {
  CloseWebPage();  // 常规浏览器的关闭
}

    这是我本人在工作学习中做的一些总结,同时也分享出来给需要的小伙伴哈 ~ 供参考学习,有什么建议也欢迎评论留言,转载请注明出处哈,感谢支持!

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值