Inhaltsverzeichnis
对象/特征检测法
user-agent字符串检测法
检测操作系统:
文章大部分内容来自于《Javascript征途》
Heim Web-Frontend js-Tutorial javascript 检测浏览器类型和版本的代码_javascript技巧

javascript 检测浏览器类型和版本的代码_javascript技巧

May 16, 2016 pm 06:46 PM
版本

检测浏览器及其版本的代码
复制代码 代码如下:

getBrowser : function(){
var browser = {
msie: false, firefox: false, opera: false, safari: false,
chrome: false, netscape: false, appname: 'unknown', version: 0
},
userAgent = window.navigator.userAgent.toLowerCase();
if ( /(msie|firefox|opera|chrome|netscape)\D+(\d[\d.]*)/.test( userAgent ) ){
browser[RegExp.$1] = true;
browser.appname = RegExp.$1;
browser.version = RegExp.$2;
} else if ( /version\D+(\d[\d.]*).*safari/.test( userAgent ) ){ // safari
browser.safari = true;
browser.appname = 'safari';
browser.version = RegExp.$2;
}
return browser.appname + browser.version;
}

对象/特征检测法

该方法是一种判断浏览器能力(而非浏览器的确切型号)的通用方法。大部分JS专家认为这个方法最合适,因为他们认为按照该方法所编写的脚本是经得起未来考验的。

<span style="COLOR: green">//获取IE浏览器的版本号</span>
Nach dem Login kopieren
Nach dem Login kopieren
<span style="COLOR: green">//返回数值,显示IE的主版本号</span>
Nach dem Login kopieren
Nach dem Login kopieren
<span style="COLOR: blue">function </span>getIEVer() {
Nach dem Login kopieren
Nach dem Login kopieren
 <span style="COLOR: blue">var </span>ua = navigator.userAgent; <span style="COLOR: green">//获取用户端信息</span>
Nach dem Login kopieren
Nach dem Login kopieren
<span style="COLOR: green"> </span><span style="COLOR: blue">var </span>b = ua.indexOf(<span style="COLOR: #a31515">"MSIE "</span>); <span style="COLOR: green">//检测特殊字符串"MSIE "的位置</span>
Nach dem Login kopieren
Nach dem Login kopieren
<span style="COLOR: green"> </span><span style="COLOR: blue">if </span>(b <pre style="PADDING-RIGHT: 0px! important; PADDING-LEFT: 12px! important; PADDING-BOTTOM: 0px! important; MARGIN: 0em; COLOR: black; WORD-BREAK: normal; LINE-HEIGHT: 18px; PADDING-TOP: 0px! important; BACKGROUND-COLOR: #f7f7ff! important; WORD-WRAP: break-word">  <span style="COLOR: blue">return </span>0;
Nach dem Login kopieren
Nach dem Login kopieren
 }
Nach dem Login kopieren
Nach dem Login kopieren
 <span style="COLOR: blue">return </span>parseFloat(ua.substring(b + 5, ua.indexOf(<span style="COLOR: #a31515">";"</span>, b))); <span style="COLOR: green">//截取版本号字符串,并转换为数值</span>
Nach dem Login kopieren
Nach dem Login kopieren
}
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
alert(getIEVer()); <span style="COLOR: green">//返回数值8(我的IE8)</span>
Nach dem Login kopieren

如果更关注浏览器的能力而不在乎它实际的身份,就可以使用这种方法。

user-agent字符串检测法

user-agent字符串提供了关于Web浏览器的大量信息,包括浏览器的名称和版本。

<span style="COLOR: blue">var </span>ua = navigator.userAgent.toLowerCase(); <span style="COLOR: green">//获取用户端信息</span>
Nach dem Login kopieren
<span style="COLOR: blue">var </span>info = {
Nach dem Login kopieren
 ie: /msie/.test(ua) && !/opera/.test(ua),  <span style="COLOR: green">//匹配IE浏览器</span>
Nach dem Login kopieren
<span style="COLOR: green"> </span>op: /opera/.test(ua),  <span style="COLOR: green">//匹配Opera浏览器</span>
Nach dem Login kopieren
<span style="COLOR: green"> </span>sa: /version.*safari/.test(ua),  <span style="COLOR: green">//匹配Safari浏览器</span>
Nach dem Login kopieren
<span style="COLOR: green"> </span>ch: /chrome/.test(ua),  <span style="COLOR: green">//匹配Chrome浏览器</span>
Nach dem Login kopieren
<span style="COLOR: green"> </span>ff: /gecko/.test(ua) && !/webkit/.test(ua)  <span style="COLOR: green">//匹配Firefox浏览器</span>
Nach dem Login kopieren
};
Nach dem Login kopieren
(info.ie) && alert(<span style="COLOR: #a31515">"IE浏览器"</span>);
Nach dem Login kopieren
(info.op) && alert(<span style="COLOR: #a31515">"Opera浏览器"</span>);
Nach dem Login kopieren
(info.sa) && alert(<span style="COLOR: #a31515">"Safari浏览器"</span>);
Nach dem Login kopieren
(info.ff) && alert(<span style="COLOR: #a31515">"Firefox浏览器"</span>);
Nach dem Login kopieren
(info.ch) && alert(<span style="COLOR: #a31515">"Chrome浏览器"</span>);
Nach dem Login kopieren

通常我们做得最多的,就是判断是否是IE了,其它几种浏览器一般都会符合标准.有些客户只需要符合IE和FF就已经满足了.那么我们可以这样做:

<span style="COLOR: blue">var </span>isIE = (navigator.appName == <span style="COLOR: #a31515">"Microsoft Internet Explorer"</span>);
Nach dem Login kopieren

判断IE远远不止上面一种方法,可以使用IE更多特有的东西,如:window.ActiveXObject,document.all等,这些都属于对象/特征检测法了!通常要在不同的浏览器上写不同的样式(因为IE样式解析也各有不同),那就得判断版本了.可以这样做

<span style="COLOR: green">//获取IE浏览器的版本号</span>
Nach dem Login kopieren
Nach dem Login kopieren
<span style="COLOR: green">//返回数值,显示IE的主版本号</span>
Nach dem Login kopieren
Nach dem Login kopieren
<span style="COLOR: blue">function </span>getIEVer() {
Nach dem Login kopieren
Nach dem Login kopieren
 <span style="COLOR: blue">var </span>ua = navigator.userAgent; <span style="COLOR: green">//获取用户端信息</span>
Nach dem Login kopieren
Nach dem Login kopieren
<span style="COLOR: green"> </span><span style="COLOR: blue">var </span>b = ua.indexOf(<span style="COLOR: #a31515">"MSIE "</span>); <span style="COLOR: green">//检测特殊字符串"MSIE "的位置</span>
Nach dem Login kopieren
Nach dem Login kopieren
<span style="COLOR: green"> </span><span style="COLOR: blue">if </span>(b <pre style="PADDING-RIGHT: 0px! important; PADDING-LEFT: 12px! important; PADDING-BOTTOM: 0px! important; MARGIN: 0em; COLOR: black; WORD-BREAK: normal; LINE-HEIGHT: 18px; PADDING-TOP: 0px! important; BACKGROUND-COLOR: #f7f7ff! important; WORD-WRAP: break-word">  <span style="COLOR: blue">return </span>0;
Nach dem Login kopieren
Nach dem Login kopieren
 }
Nach dem Login kopieren
Nach dem Login kopieren
 <span style="COLOR: blue">return </span>parseFloat(ua.substring(b + 5, ua.indexOf(<span style="COLOR: #a31515">";"</span>, b))); <span style="COLOR: green">//截取版本号字符串,并转换为数值</span>
Nach dem Login kopieren
Nach dem Login kopieren
}
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
alert(getIEVer()); <span style="COLOR: green">//返回数值7</span>
Nach dem Login kopieren

检测操作系统:

<span style="COLOR: blue">var </span>isWin = (navigator.userAgent.indexOf(<span style="COLOR: #a31515">"Win"</span>) != -1); <span style="COLOR: green">//如果是Windows系统,则返回true</span>
Nach dem Login kopieren
<span style="COLOR: blue">var </span>isMac = (navigator.userAgent.indexOf(<span style="COLOR: #a31515">"Mac"</span>) != -1);  <span style="COLOR: green">//如果是Macintosh系统,则返回true</span>
Nach dem Login kopieren
<span style="COLOR: blue">var </span>isUnix = (navigator.userAgent.indexOf(<span style="COLOR: #a31515">"X11"</span>) != -1);  <span style="COLOR: green">//如果是Unix系统,则返回true</span>
Nach dem Login kopieren
<span style="COLOR: blue">var </span>isLinux = (navigator.userAgent.indexOf(<span style="COLOR: #a31515">"Linux"</span>) != -1);  <span style="COLOR: green">//如果是Linux系统,则返回true</span>
Nach dem Login kopieren

文章大部分内容来自于《Javascript征途》

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So überprüfen Sie schnell die Numpy-Version So überprüfen Sie schnell die Numpy-Version Jan 19, 2024 am 08:23 AM

Numpy ist eine wichtige Mathematikbibliothek in Python. Sie bietet effiziente Array-Operationen und wissenschaftliche Berechnungsfunktionen und wird häufig in den Bereichen Datenanalyse, maschinelles Lernen, Deep Learning und anderen Bereichen verwendet. Bei der Verwendung von Numpy müssen wir häufig die Versionsnummer von Numpy überprüfen, um die von der aktuellen Umgebung unterstützten Funktionen zu ermitteln. In diesem Artikel erfahren Sie, wie Sie die Numpy-Version schnell überprüfen und spezifische Codebeispiele bereitstellen. Methode 1: Verwenden Sie das __version__-Attribut, das mit numpy geliefert wird. Das numpy-Modul wird mit einem __ geliefert.

So überprüfen Sie die Maven-Version So überprüfen Sie die Maven-Version Jan 17, 2024 pm 05:06 PM

Methoden zum Überprüfen der Maven-Version: 1. Verwenden Sie die Befehlszeile. 3. Überprüfen Sie die IDE. Detaillierte Einführung: 1. Verwenden Sie die Befehlszeile, geben Sie „mvn -v“ oder „mvn --version“ in die Befehlszeile ein und drücken Sie dann die Eingabetaste. Dadurch werden die Maven-Versionsinformationen und die Java-Versionsinformationen angezeigt Variablen: Auf einigen Systemen können Sie die Umgebungsvariablen überprüfen, um die Maven-Versionsinformationen zu finden, den Befehl in die Befehlszeile eingeben und dann die Eingabetaste drücken usw.

Tutorial zum Aktualisieren der Curl-Version unter Linux! Tutorial zum Aktualisieren der Curl-Version unter Linux! Mar 07, 2024 am 08:30 AM

Um die Curl-Version unter Linux zu aktualisieren, können Sie die folgenden Schritte ausführen: Überprüfen Sie die aktuelle Curl-Version: Zunächst müssen Sie die im aktuellen System installierte Curl-Version ermitteln. Öffnen Sie ein Terminal und führen Sie den folgenden Befehl aus: curl --version Dieser Befehl zeigt die aktuellen Informationen zur Curl-Version an. Verfügbare Curl-Version bestätigen: Bevor Sie Curl aktualisieren, müssen Sie die neueste verfügbare Version bestätigen. Sie können die offizielle Website von Curl (curl.haxx.se) oder verwandte Softwarequellen besuchen, um die neueste Version von Curl zu finden. Laden Sie den Curl-Quellcode herunter: Laden Sie mit Curl oder einem Browser die Quellcodedatei für die Curl-Version Ihrer Wahl herunter (normalerweise .tar.gz oder .tar.bz2).

Einfache Schritte zum Aktualisieren der Pip-Version: in 1 Minute erledigt Einfache Schritte zum Aktualisieren der Pip-Version: in 1 Minute erledigt Jan 27, 2024 am 09:45 AM

In einer Minute erledigt: So aktualisieren Sie die Pip-Version. Mit der rasanten Entwicklung von Python ist Pip zu einem Standardtool für die Python-Paketverwaltung geworden. Mit der Zeit werden die Pip-Versionen jedoch ständig aktualisiert. Um die neuesten Funktionen nutzen und mögliche Sicherheitslücken schließen zu können, ist es sehr wichtig, die Pip-Version zu aktualisieren. In diesem Artikel wird erläutert, wie Sie Pip in einer Minute schnell aktualisieren können, und es werden spezifische Codebeispiele bereitgestellt. Zuerst müssen wir ein Befehlszeilenfenster öffnen. In Windows-Systemen können Sie verwenden

Überprüfen Sie die Version des Kirin-Betriebssystems und des Kernels Überprüfen Sie die Version des Kirin-Betriebssystems und des Kernels Feb 21, 2024 pm 07:04 PM

Überprüfen der Kylin-Betriebssystemversion und der Kernelversion Im Kirin-Betriebssystem ist das Wissen, wie die Systemversion und die Kernelversion überprüft werden, die Grundlage für die Systemverwaltung und -wartung. Methode 1 zum Überprüfen der Kylin-Betriebssystemversion: Verwenden Sie die Datei /etc/.kyinfo. Um die Kylin-Betriebssystemversion zu überprüfen, können Sie die Datei /etc/.kyinfo überprüfen. Diese Datei enthält Informationen zur Betriebssystemversion. Führen Sie den folgenden Befehl aus: cat/etc/.kyinfo Dieser Befehl zeigt detaillierte Versionsinformationen des Betriebssystems an. Methode 2: Verwenden Sie die Datei /etc/issue. Eine andere Möglichkeit, die Betriebssystemversion zu überprüfen, besteht darin, sich die Datei /etc/issue anzusehen. Diese Datei enthält auch Versionsinformationen, ist jedoch möglicherweise nicht so gut wie die .kyinfo-Datei

So überprüfen Sie ganz einfach die installierte Version von Oracle So überprüfen Sie ganz einfach die installierte Version von Oracle Mar 07, 2024 am 11:27 AM

Um die installierte Version von Oracle einfach zu überprüfen, sind spezifische Codebeispiele erforderlich. Da es sich bei der Oracle-Datenbank um eine in Datenbankverwaltungssystemen auf Unternehmensebene weit verbreitete Software handelt, gibt es viele Versionen und unterschiedliche Installationsmethoden. In unserer täglichen Arbeit müssen wir häufig die installierte Version der Oracle-Datenbank auf entsprechende Betriebs- und Wartungsarbeiten überprüfen. In diesem Artikel erfahren Sie, wie Sie die installierte Version von Oracle einfach überprüfen können, und geben konkrete Codebeispiele. Methode 1: Durch SQL-Abfrage in der Oracle-Datenbank können wir

Interpretieren Sie die Bedeutung und den Unterschied der PHP-Version NTS Interpretieren Sie die Bedeutung und den Unterschied der PHP-Version NTS Mar 27, 2024 am 11:48 AM

Die Bedeutung und der Unterschied der PHP-Version NTS PHP ist eine beliebte serverseitige Skriptsprache, die im Bereich der Webentwicklung weit verbreitet ist. Es gibt zwei Hauptversionen von PHP: ThreadSafe (TS) und Non-ThreadSafe (NTS). Auf der offiziellen Website von PHP können wir zwei verschiedene PHP-Download-Versionen sehen, nämlich PHPNTS und PHPTS. Was bedeutet also die PHP-Version NTS? Was ist der Unterschied zur TS-Version? Nächste,

Nach 750.000 Runden Einzelkampf zwischen großen Modellen gewann GPT-4 die Meisterschaft und Llama 3 belegte den fünften Platz Nach 750.000 Runden Einzelkampf zwischen großen Modellen gewann GPT-4 die Meisterschaft und Llama 3 belegte den fünften Platz Apr 23, 2024 pm 03:28 PM

Zu Llama3 wurden neue Testergebnisse veröffentlicht – die große Modellbewertungs-Community LMSYS veröffentlichte eine große Modell-Rangliste, die Llama3 auf dem fünften Platz belegte und mit GPT-4 den ersten Platz in der englischen Kategorie belegte. Das Bild unterscheidet sich von anderen Benchmarks. Diese Liste basiert auf Einzelkämpfen zwischen Modellen, und die Bewerter aus dem gesamten Netzwerk machen ihre eigenen Vorschläge und Bewertungen. Am Ende belegte Llama3 den fünften Platz auf der Liste, gefolgt von drei verschiedenen Versionen von GPT-4 und Claude3 Super Cup Opus. In der englischen Einzelliste überholte Llama3 Claude und punktgleich mit GPT-4. Über dieses Ergebnis war Metas Chefwissenschaftler LeCun sehr erfreut und leitete den Tweet weiter

See all articles