Come determinare la versione del browser da uno script

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
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.
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: 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: 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
rilevare verificare controllare

Avviso: questo articolo è stato tradotto automaticamente

Proprietà

ID articolo: 167820 - Ultima revisione: 08/09/2007 06:22:06 - Revisione: 1.4

Microsoft Internet Explorer 3.0, Microsoft Internet Explorer 3.01, Microsoft Internet Explorer 3.02, Microsoft Internet Explorer 4.0 128-Bit Edition

  • kbmt kbfaq kbhowto kbscript KB167820 KbMtit
Feedback