Come determinare la versione del browser da uno script

Traduzione articoli Traduzione articoli
Identificativo articolo: 167820 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

Con le nuove funzionalitÓ disponibili in Internet Explorer 4.0, potrebbe essere utile per gli script sia lato client e lato server determinare la versione del browser, in modo da un'applicazione Web possibile sfruttare le nuove funzionalitÓ o ridurre, in base alla versione del browser in esecuzione.

importante : I metodi che vengono utilizzati in questo articolo si basano sul sito Web riceve la stringa "HTTP_USER_AGENT" corretta per i browser che si connettono al sito. Alcuni server proxy e browser possono inviare le informazioni che sono errato o difficili da interpretare. Ad esempio, la stringa HTTP_USER_AGENT predefinita che opera 5.12 restituisce Ŕ "Mozilla/4.0 (compatibile; MSIE 5.0; < sistema operativo >) opera 5.12 [IT]". Questa stringa Ŕ difficile interpretare perchÚ la prima parte della stringa Ŕ lo stesso della stringa che restituisce in Internet Explorer 5.

Se Ŕ necessario identificare in modo univoco Internet Explorer versione 5 o versioni successive (per le piattaforme Microsoft Win32 e UNIX solo), utilizzare l'isComponentInstalled o getComponentVersion del comportamento CLIENTCAPS. Per informazioni su questi metodi, vedere i seguenti siti Web Microsoft:
http://msdn2.microsoft.com/en-us/library/ms531357.aspx

http://msdn2.microsoft.com/en-us/library/ms531350.aspx
Nota : questi metodi non riuscirÓ se il client non Ŕ Internet Explorer 5 o successive (piattaforme Microsoft Win32 e UNIX solo).

Informazioni

Da uno script lato client

La funzione di JScript riportato di seguito pu˛ essere utilizzata per determinare la versione del browser in che cui viene eseguito da uno script lato client. La funzione viene eseguita sulla grande maggioranza dei browser attualmente disponibili e restituisce il numero versione principale di qualsiasi browser Microsoft Internet Explorer, mentre zero (0) ad altri utenti. Utilizzo di questa funzione assicura che lo script sarÓ compatibile con le future versioni di 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>
				
quando si controlla i numeri di versione, script necessario utilizzare sempre il > = operatore, anzichÚ il = (operatore) per garantire la compatibilitÓ con le versioni future. Gli script esistenti in modo specifico cercare userAgent uguale a "MSIE 3", ad esempio, devono essere modificati per utilizzare il > = operatore in modo che gli script di riconoscono anche Internet Explorer 4.0.

Nell'esempio seguito viene illustrato come rilevare la versione del browser da uno script lato client. Si noti che in questo esempio non effettuerÓ il controllo versione di piattaforma, ad esempio Windows 95, Windows NT, Windows 3.1 e cosý via, che richiedono un controllo di sottostringa userAgent separati quando applicabile:
<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>
				

Da uno script lato server

Nota : il metodo di Request.ServerVariables("HTTP_USER_AGENT") pu˛ essere utilizzato in sostituzione dell'oggetto BrowserType in script sul lato server. Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:
272413Come determinare il tipo di browser nello script del lato server senza l'oggetto BrowserType
Il componente di funzionalitÓ del browser fornito con ASP (Active Server Pages) fornisce gli script di una descrizione delle funzionalitÓ del browser del client confrontando l'intestazione HTTP User-Agent con le voci nel file BROWSCAP.INI. AffinchÚ un'applicazione ASP rilevare il supporto del browser per le nuove funzionalitÓ di Internet Explorer 4.0, Ŕ possibile copiare la versione pi¨ recente BROWSCAP.INI dal seguente sito Web Cyscape:
http://www.cyscape.com/asp/browscap/
Copia in directory di %windows%\system32\inetsrv\asp\cmpnts ed eseguire un script di lato server simile all'esempio riportato di seguito.

In questo esempio specificamente sfrutta nuove funzionalitÓ di DHTML se il browser in uso Ŕ Internet Explorer 4.0 o versioni successive:
<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>
				

Riferimenti

Guida di componenti nella Guida di orientamento Pages (ASP) di Server Active

ProprietÓ

Identificativo articolo: 167820 - Ultima modifica: giovedý 9 agosto 2007 - Revisione: 1.4
Le informazioni in questo articolo si applicano a:
  • Microsoft Internet Explorer 3.0
  • Microsoft Internet Explorer 3.01
  • Microsoft Internet Explorer 3.02
  • Microsoft Internet Explorer 4.0 128-Bit Edition
Chiavi:á
kbmt kbfaq kbhowto kbscript KB167820 KbMtit
Traduzione automatica articoli
Il presente articolo Ŕ stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non Ŕ sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pi¨ o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non Ŕ la sua. Microsoft non Ŕ responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 167820
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.
Dichiarazione di non responsabilitÓ per articoli della Microsoft Knowledge Base su prodotti non pi¨ supportati
Questo articolo Ŕ stato scritto sui prodotti per cui Microsoft non offre pi¨ supporto. L?articolo, quindi, viene offerto ?cosý come Ŕ? e non verrÓ pi¨ aggiornato.

Invia suggerimenti

 

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