目录
前言
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>
此贴为个人学习记录,便于以后使用,仅供参考!