Es wird im Allgemeinen verwendet, um festzustellen, ob die Versionsnummer zwischen den beiden liegt. Es kann auch verwendet werden, um festzustellen, ob sie größer als eine bestimmte Versionsnummer ist. Wenn sie kleiner als eine bestimmte Versionsnummer ist, kann sie negiert werden 🎜>
PS: Es ist darauf zu achten, dass die Versionsangaben konsistent sind, z. B. sind es alle n-stellige Versionsnummern, getrennt durch .
var APP = {}; //判断指定版本是否在版本范围之间,需确保版本规范一致;比如 (..,..,..) APP.betweenVersion = function(curr,start,end,separator){ if(curr == start || curr == end){ return true; } var separator = separator || '.'; var curr = curr.split(separator); var start = start.split(separator); var end = end.split(separator); var gtStart = false; var ltEnd = false; gtStart = APP.gtTargetVersion( APP.compareVersionEle(curr,start) ); if(!gtStart){ return false; } return !APP.gtTargetVersion( APP.compareVersionEle(curr,end) ); }; APP.compareVersionEle = function(curr,target){ var len = curr.length; var temp = []; var left,right; for(var i=;i<len;i++){ left = +curr[i]; right = +target[i]; if(left == right){ temp.push(); }else if(left > right){ temp.push(); }else{ temp.push(-); } } return temp; }; APP.gtTargetVersion = function(arr){ var res = true; var curr,next; for(var i=,len=arr.length;i<len;i++){ curr = arr[i]; next = arr[i+]; if( curr>next ){ if(curr == ){ res = false; break; } if(curr == ){ res = true; break; } }else if(curr == next){ if(curr == -){ res = false; break; } if(curr == ){ res = true; break; } }else{ if(curr == -){ res = false; break; } if(curr == ){ res = true; break; } } } // console.log(res); return res; } var res = APP.betweenVersion('...','...','...','.'); console.log(res);
Die aktuelle Methode hat zwei Hauptpunkte: Zum einen muss die Schnittversionsnummer in ein numerisches Array umgewandelt werden, zum anderen wird sie beim Vergleich der Größe in einen Vergleich von drei Werten umgewandelt von -1 0 1. Auf diese Weise ist die Versionsnummer unabhängig von der Trennung in mehrere Segmente unterteilt und kann korrekt verglichen werden Lassen Sie mich den Javascript-Code zur Erkennung von Browsertyp und -version mit Ihnen teilen
Methode zur Objekt-/Merkmalserkennung
Diese Methode ist eine allgemeine Methode zur Bestimmung der Funktionen eines Browsers (und nicht des genauen Modells des Browsers). Die meisten JS-Experten halten diesen Ansatz für den am besten geeigneten, da sie glauben, dass auf diese Weise geschriebene Skripte zukunftssicher sind.
//获取IE浏览器的版本号 //返回数值,显示IE的主版本号 function getIEVer() { var ua = navigator.userAgent; //获取用户端信息 var b = ua.indexOf("MSIE "); //检测特殊字符串"MSIE "的位置 if (b < 0) { return 0; } return parseFloat(ua.substring(b + 5, ua.indexOf(";", b))); //截取版本号字符串,并转换为数值 } alert(getIEVer()); //返回数值8(我的IE8)
Methode zur Erkennung von Benutzeragentenzeichenfolgen
Die User-Agent-Zeichenfolge bietet eine Fülle von Informationen über den Webbrowser, einschließlich des Namens und der Version des Browsers.
var ua = navigator.userAgent.toLowerCase(); //获取用户端信息 var info = { ie: /msie/.test(ua) && !/opera/.test(ua), //匹配IE浏览器 op: /opera/.test(ua), //匹配Opera浏览器 sa: /version.*safari/.test(ua), //匹配Safari浏览器 ch: /chrome/.test(ua), //匹配Chrome浏览器 ff: /gecko/.test(ua) && !/webkit/.test(ua) //匹配Firefox浏览器 }; (info.ie) && alert("IE浏览器"); (info.op) && alert("Opera浏览器"); (info.sa) && alert("Safari浏览器"); (info.ff) && alert("Firefox浏览器"); (info.ch) && alert("Chrome浏览器");
var isIE = (navigator.appName == "Microsoft Internet Explorer");
//获取IE浏览器的版本号 //返回数值,显示IE的主版本号 function getIEVer() { var ua = navigator.userAgent; //获取用户端信息 var b = ua.indexOf("MSIE "); //检测特殊字符串"MSIE "的位置 if (b < 0) { return 0; } return parseFloat(ua.substring(b + 5, ua.indexOf(";", b))); //截取版本号字符串,并转换为数值 } alert(getIEVer()); //返回数值7