どのようにjsに基づいてブラウザのバージョンを判断しますか?
この文章は主にjsに基づいてブラウザのバージョンを判断する方法を紹介しています。ここではサンプルコードによって紹介された非常に詳細で、皆さんの学習や仕事に対して一定の参考学習価値を持っています。必要な友達は下記を参考にしてください。
ブラウザタイプ判定
IE 9以下のブラウザに対する判断を考慮しない
IEブラウザのバージョンを判断する
edge、ie 11、10、9、8、7、6、5、4を含みます。
ブラウザタイプ判定
IE 9以下のブラウザに対する判断を考慮しない
function getBrowserType(){
var userAgent = navigator.userAgent; // userAgent
var browser='unknown';
if (userAgent.indexOf("IE")!=-1) {
browser="IE";
}else if(userAgent.indexOf('Firefox')!=-1){
browser="Firefox";
}else if(userAgent.indexOf('OPR')!=-1){
browser="Opera";
}else if(userAgent.indexOf('Chrome')!=-1){
browser="Chrome";
}else if(userAgent.indexOf('Safari')!=-1){
browser="Safari";
}else if(userAgent.indexOf('Trident')!=-1){
browser='IE 11';
}
return browser;
}
テストIEブラウザのバージョンを判断する
edge、ie 11、10、9、8、7、6、5、4を含みます。
// IE
function IEVersion() {
// userAgent
var userAgent = navigator.userAgent;
// IE11
var isLessIE11 = userAgent.indexOf('compatible') > -1 && userAgent.indexOf('MSIE') > -1;
// IE Edge
var isEdge = userAgent.indexOf('Edge') > -1 && !isLessIE11;
// IE11
var isIE11 = userAgent.indexOf('Trident') > -1 && userAgent.indexOf('rv:11.0') > -1;
if (isLessIE11) {
var IEReg = new RegExp('MSIE (\\d+\\.\\d+);');
// userAgent MSIE ,, !!!
IEReg.test(userAgent);
//
var IEVersionNum = parseFloat(RegExp['$1']);
if (IEVersionNum === 7) {
// IE7
return 7
} else if (IEVersionNum === 8) {
// IE8
return 8
} else if (IEVersionNum === 9) {
// IE9
return 9
} else if (IEVersionNum === 10) {
// IE10
return 10
} else {
// IE <7
return 6
}
} else if (isEdge) {
// edge
return 'edge'
} else if (isIE11) {
// IE11
return 11
} else {
// ie
return -1
}
}
ブラウザの型番とバージョン番号を判断する
function getBroswerAndVersion(){
var os = navigator.platform;
var userAgent = navigator.userAgent;
var info = "";
var tempArray = "";
//
var isOpera = userAgent.indexOf("Opera") > -1; // Opera
var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera; // IE
var isEdge = userAgent.toLowerCase().indexOf("edge") > -1 && !isIE; // IE Edge
var isIE11 = (userAgent.toLowerCase().indexOf("trident") > -1 && userAgent.indexOf("rv") > -1);
if (/[Ff]irefox(\/\d+\.\d+)/.test(userAgent)) {
tempArray = /([Ff]irefox)\/(\d+\.\d+)/.exec(userAgent);
info += tempArray[1] + tempArray[2];
} else if (isIE) {
var version = "";
var reIE = new RegExp("MSIE (\\d+\\.\\d+);");
reIE.test(userAgent);
var fIEVersion = parseFloat(RegExp["$1"]);
if (fIEVersion == 7)
{ version = "IE7"; }
else if (fIEVersion == 8)
{ version = "IE8"; }
else if (fIEVersion == 9)
{ version = "IE9"; }
else if (fIEVersion == 10)
{ version = "IE10"; }
else
{ version = "0" }
info += version;
} else if (isEdge) {
info += "Edge";
} else if (isIE11) {
info += "IE11";
} else if (/[Cc]hrome\/\d+/.test(userAgent)) {
tempArray = /([Cc]hrome)\/(\d+)/.exec(userAgent);
info += tempArray[1] + tempArray[2];
} else if (/[Vv]ersion\/\d+\.\d+\.\d+(\.\d)* *[Ss]afari/.test(userAgent)) {
tempArray = /[Vv]ersion\/(\d+\.\d+\.\d+)(\.\d)* *([Ss]afari)/.exec(userAgent);
info += tempArray[3] + tempArray[1];
} else if (/[Oo]pera.+[Vv]ersion\/\d+\.\d+/.test(userAgent)) {
tempArray = /([Oo]pera).+[Vv]ersion\/(\d+)\.\d+/.exec(userAgent);
info += tempArray[1] + tempArray[2];
} else {
info += "unknown";
}
return info;
}
IE 9バージョン以下のリマインダ
<!--[if lte IE 9]>
<script>
var bro = getBroswerAndVersion();
if(bro=="IE5" || bro=="IE6" || bro=="IE7" || bro=="IE8" ){
alert(" ! IE9 ");
}
</script>
<![endif]-->
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。