Procédure pour déterminer la version de navigateur à partir d'un script

Traductions disponibles Traductions disponibles
Numéro d'article: 167820 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Résumé

Avec les nouvelles fonctionnalités qui fournit de Internet Explorer 4.0, il peut être souhaitable que les scripts côté client et côté serveur pour déterminer la version du navigateur, de façon à une application Web pouvez tirer parti des fonctionnalités nouvelles ou dégrader normalement, en fonction de la version du navigateur en cours d'exécution.

IMPORTANT : les méthodes qui sont utilisés dans cet article reposent sur le site Web de réception de la chaîne "HTTP_USER_AGENT" correcte pour les navigateurs qui se connectent au site. Certains serveurs proxy et les navigateurs puissent envoyer des informations sont incorrectes ou difficiles à interpréter. Par exemple, la chaîne HTTP_USER_AGENT par défaut Opera 5.12 retourne une valeur est "Mozilla/4.0 (compatible ; MSIE 5.0; < système d'exploitation >) Opera 5.12 [en]". Cette chaîne est difficile à interpréter car la première partie de la chaîne est identique à la chaîne Internet Explorer 5.

Si vous avez besoin identifier de Internet Explorer version 5 ou version ultérieure (sur les plates-formes Microsoft Win32 et UNIX uniquement), utilisez les méthodes isComponentInstalled ou getComponentVersion du comportement CLIENTCAPS. Pour informations sur ces méthodes, consultez les sites Web de Microsoft aux adresses suivantes :
http://msdn2.microsoft.com/en-us/library/ms531357.aspx

http://msdn2.microsoft.com/en-us/library/ms531350.aspx
Remarque : ces méthodes va échouer si le client n'est pas Internet Explorer 5 ou version ultérieure (plates-formes Microsoft Win32 et UNIX uniquement).

Plus d'informations

À partir d'un script côté client

La fonction JScript ci-dessous peut être utilisée pour déterminer la version du navigateur, qu'il s'exécute sur à partir d'un script côté client. La fonction s'exécute sur la grande majorité des navigateurs disponibles et renvoie le numéro de version majeur pour n'importe quel navigateur Microsoft Internet Explorer et zéro (0) pour d'autres. Utilisation de cette fonction garantit que le script sera compatible avec les futures versions d'Internet Explorer.
   // This function returns Internet Explorer's major version number,
   // or 0 for others. It works by finding the "MSIE " string and
   // extracting the version number following the space, up to the decimal
   // point, ignoring the minor version number
   <SCRIPT LANGUAGE="JavaSCRIPT">
   function msieversion()
   {
      var ua = window.navigator.userAgent
      var msie = ua.indexOf ( "MSIE " )

      if ( msie > 0 )      // If Internet Explorer, return version number
         return parseInt (ua.substring (msie+5, ua.indexOf (".", msie )))
      else                 // If another browser, return 0
         return 0

   }
   </SCRIPT>
				
Lors de la vérification des numéros de version, les scripts utilisez toujours la > = (opérateur), au lieu de l'opérateur = pour garantir la compatibilité avec les versions ultérieures. Scripts existants les recherchez spécifiquement userAgent égale à «MSIE 3», par exemple, doivent être modifiées pour utiliser le > = (opérateur), de sorte que les scripts sait également Internet Explorer 4.0.

L'exemple suivant montre comment détecter la version du navigateur à partir d'un script côté client. Notez que cet exemple ne vérifie pas spécifiquement pour la version de plate-forme, tels que Windows 95, Windows NT, Windows 3.1 et ainsi de suite, qui exigent une vérification de sous-chaîne userAgent séparé lorsqu'elle est applicable :
<SCRIPT LANGUAGE="javascript">
   if ( msieversion() >= 4 )

      document.write ( "This is Internet Explorer 4 or later" );

   else if ( msieversion() >= 3 )

      document.write ( "This is Internet Explorer 3" );

   else

      document.write ( "This is another browser" );

   </SCRIPT>
				

À partir d'un script côté serveur

Remarque : la méthode Request.ServerVariables ("HTTP_USER_AGENT") peut être utilisée à la place de l'objet BrowserType dans le script côté serveur. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
272413Comment faire pour déterminer le type de navigateur dans le script côté serveur sans l'objet BrowserType
Le composant Browser Capability fourni avec ASP (Active Server Pages) fournit à vos scripts une description des fonctionnalités du navigateur Web du client en comparant l'en-tête HTTP User-Agent avec les entrées dans le fichier BROWSCAP.INI. Pour une application ASP détecter la prise en charge du navigateur des nouvelles fonctionnalités de Internet Explorer 4.0, copiez BROWSCAP.INI plus récent à partir du site Web de Cyscape suivant :
http://www.cyscape.com/asp/browscap/
Copiez-le dans votre répertoire %windows%\system32\inetsrv\asp\cmpnts et exécuter un script côté serveur similaire à l'exemple ci-dessous.

Cet exemple spécifiquement tire parti des nouvelles fonctionnalités DHTML que si le navigateur actuel est Internet Explorer 4.0 ou version ultérieure :
<HTML>
<BODY>

   <%  Set bc = Server.CreateObject("MSWC.BrowserType") %>
   <table border=0 cellspacing="0" cellpadding="5">

      <tr>

         <% If bc.browser = "IE" and bc.version >= 4 Then %>
         <td><a href="chocolate.htm" TARGET="_TEXT"
              onmouseover="this.style.color='red'"
              onmouseout="this.style.color='purple'">chocolate</a>
         </td>

         <% Else %>
            <td><a href="chocolate.htm" TARGET="_TEXT">chocolate</a></td>
         <% End If %>

         <td>|</td>

         <% If bc.browser = "IE" and bc.version >= 4 Then %>
         <td><a href="vanilla.htm" TARGET="_TEXT"
              onmouseover="this.style.color='red'"
              onmouseout="this.style.color='purple'">vanilla</a>
         </td>

         <% Else %>
            <td><a href="vanilla.htm" TARGET="_TEXT">vanilla</a></td>
         <% End If %>

      </tr>

   </table>

</BODY>
</HTML>
				

Références

Référence des composants dans le document Active Server Pages (ASP) Roadmap

Propriétés

Numéro d'article: 167820 - Dernière mise à jour: jeudi 9 août 2007 - Version: 1.4
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Internet Explorer 3.0
  • Microsoft Internet Explorer 3.01
  • Microsoft Internet Explorer 3.02
  • Microsoft Internet Explorer 4.0 Édition 128 bits
Mots-clés : 
kbmt kbfaq kbhowto kbscript KB167820 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 167820
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.
Exclusion de responsabilité concernant les contenus obsolètes dans la Base de connaissances
Cet article concerne des produits pour lesquels Microsoft n'offre plus de support. Il est par conséquent fourni « en l'état » et ne sera plus mis à jour.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com