使用JavaScript调用常用浏览器,解决IE浏览器兼容性问题

目录

前言

JavaScript代码

        此贴为个人学习记录,便于以后使用!

前言

        开发中经常会遇到用户使用IE浏览器的情况,但是由于各种兼容问题,网页实际显示效果和开发的效果有较大出入。

        所以有了以下解决方案:如果当前网页用户使用IE浏览器打开,则调用Edge/Google/Firefox(具体可根据需求自行添加)等兼容性较好的常用浏览器并跳转至当前链接,详细代码如下。


提示:以下是本篇文章正文内容,下面案例可供参考

JavaScript代码

<!DOCTYPE html>
<html lang="CN">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>跳转测试</title>
  </head>
  <body>
    <h1>跳转测试文件</h1>
  </body>
  <script>
    window.onload = function () {
      /** 如果用户使用IE浏览器,则跳转到Chrome浏览器以获取最佳体验*/
      var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
      var isIE =
        userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1; //判断是否为IE11以下版本的浏览器
      var isIE11 =
        userAgent.indexOf("Trident") > -1 && userAgent.indexOf("rv:11.0") > -1; //判断是否为IE11浏览器
      if (isIE || isIE11) {
        var objShell = new ActiveXObject("WScript.Shell");
        if (!objShell.Run("cmd.exe /c start msedge ", 0, true)) {
          objShell.Run(
            "cmd.exe /c start msedge " + window.location.href,
            0,
            true
          ); //cmd调用edge打开当前网页
          return;
        } else if (!objShell.Run("cmd.exe /c start chrome ", 0, true)) {
          objShell.Run(
            "cmd.exe /c start chrome " + window.location.href,
            0,
            true
          ); //cmd调用Chrome打开当前网页
          return;
        } else if (!objShell.Run("cmd.exe /c start firefox ", 0, true)) {
          objShell.Run(
            "cmd.exe /c start firefox " + window.location.href,
            0,
            true
          ); //cmd调用Firefox打开当前网页
          return;
        } else if (!objShell.Run("cmd.exe /c start UCBrowser ", 0, true)) {
          objShell.Run(
            "cmd.exe /c start UCBrowser " + window.location.href,
            0,
            true
          ); //cmd调用UCBrowser打开当前网页
          return;
        }

        /** 关闭当前IE浏览器标签*/
        if (isIE) {
          window.open("", "_self");
          // window.close();
        } else {
          window.open("", "_top");
          // window.close();
        }
      }
    };
  </script>
</html>

        此贴为个人学习记录,便于以后使用,仅供参考!

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值