2009-12-18 5 views

Répondre

4

Il est généralement pas une bonne idée d'utiliser la détection de version - en fait, même la détection navigateur n'est pas recommandé! Au lieu de cela, essayez object detection.

+0

C'est vraiment une bonne technique. Mais y a-t-il des problèmes de performance? – Sauron

+0

Je suis assez sûr qu'il n'y en a pas. C'est, si je comprends bien, une «meilleure pratique». –

+0

Et c'est certainement plus rapide que tout ce qui implique des expressions régulières, et probablement aussi le découpage de chaînes. –

-2

Essayez quelque chose comme ceci:

<script language="javascript"> 
     Event.observe(window, 'load', function() { 
      var el = $("browserName"); 
      var BO = detectBrowser(); 
      if(BO.ie6){ 
       el.innerHTML = "<b>We do not support IE6. Please click <a href=\"http://www.microsoft.com/windows/downloads/ie/getitnow.mspx\">here</a> to upgrade.</b>"; 
      }else{ 
       el.innerHTML = "<b>Thank You for not running IE6.</b>"; 
      } 
     }); 
</script> 
+0

D'où provient le 'Event.observe'? – Sauron

7

Vous avez 4 à cause de navigator.appVersion les chaînes commencent par 4.0 comme ceci.

4.0 (compatible; MSIE 6.0; Windows NT 5.0; ...) 

Si vous le faites comme ça, vous obtiendrez MSIE 6.0 pour le cas ci-dessus

alert(navigator.appVersion.match(/MSIE [\d.]+/)) 

Si vous ne souhaitez que 6.0 vous pouvez faire comme

alert(navigator.appVersion.match(/MSIE ([\d.]+)/)[1]) 
2

La fonction ci-dessous Isie retours Version IE si IE est détecté ailleurs renvoie FALSECe code est basé sur the answer here par weroro.

Questions connexes