Heim >Web-Frontend >js-Tutorial >Ist die Verwendung von „navigator.appName' und „navigator.appVersion' für die Erkennung älterer IE-Versionen zuverlässig?
IE-Version (vor Version 9) in JavaScript erkennen
Erkennungskriterien und vorgeschlagener Code
Um festzustellen, ob ein Benutzer mit einer Version von Internet Explorer vor Version 9 auf eine Website zugreift, nutzt der vorgeschlagene Code die Eigenschaften navigator.appName und navigator.appVersion.
if (navigator.appName.indexOf("Internet Explorer") != -1) { // User is using IE // Check for IE version < 9 }
Funktioniert dieser Code? der Trick?
Obwohl die Bedenken hinsichtlich des User-Agent-String-Spoofings und der Funktionsunterstützungserkennung berücksichtigt werden, weist der vorgeschlagene Code mehrere Einschränkungen auf:
Eine bevorzugte Alternative
Um diese Einschränkungen zu überwinden, umfasst ein umfassenderer Ansatz die Verwendung der CSS-klassenbasierten Erkennung:
html.lt-ie9 { ... } html.lt-ie8 { ... } html.lt-ie7 { ... }
<!--[if lt IE 7]> <html class="lt-ie9 lt-ie8 lt-ie7"> <![endif]--> <!--[if IE 7]> <html class="lt-ie9 lt-ie8"> <![endif]--> <!--[if IE 8]> <html class="lt-ie9"> <![endif]--> <!--[if gt IE 8]><!--> <html> <!--<![endif]-->
if ($('html').is('.lt-ie7, .lt-ie8, .lt-ie9')) { // IE version < 9 } else { // Other browsers }
Diese Methode bietet mehr Flexibilität, Kompatibilität und Kontrolle für den Umgang mit verschiedenen Browserversionen.
Das obige ist der detaillierte Inhalt vonIst die Verwendung von „navigator.appName' und „navigator.appVersion' für die Erkennung älterer IE-Versionen zuverlässig?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!