目錄
前言
JavaScript代碼
此貼為個人學習記錄,便于以後使用!
前言
開發中經常會遇到使用者使用IE浏覽器的情況,但是由于各種相容問題,網頁實際顯示效果和開發的效果有較大出入。
是以有了以下解決方案:如果目前網頁使用者使用IE浏覽器打開,則調用Edge/Google/Firefox(具體可根據需求自行添加)等相容性較好的常用浏覽器并跳轉至目前連結,詳細代碼如下。
提示:以下是本篇文章正文内容,下面案例可供參考
JavaScript代碼
<!DOCTYPE html>
<html >
<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>