Určení verze prohlížeče pomocí skriptu

Překlady článku Překlady článku
ID článku: 167820
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

S novými funkcemi, které nabízí aplikace Internet Explorer 4.0 může být vhodné pro klientské a serverové skripty k určení verze prohlížeče tak, aby webové aplikace můžete buď využít nové funkce nebo snížit řádně ukončena, v závislosti na verzi aktuálně spuštěné prohlížeče.

DŮLEŽITÉ: Metody, které jsou používané v tomto článku se spoléhat na webový server, který obdrží správný řetězec "http_user_agent" pro prohlížeče, které se připojují k serveru. Některé servery proxy a prohlížeče, může odeslat informace, které jsou nesprávné nebo obtížně interpretovat. Například výchozí HTTP_USER_AGENT řetězec, který vrací Opera 5.12 je "Mozilla/4.0 (kompatibilní; MSIE 5.0; <operating system="">) Opera 5.12 [en] ". Tento řetězec je obtížné interpretovat, protože první část řetězce je stejný jako řetězec vrátí tuto aplikaci Internet Explorer 5.</operating>

Pokud potřebujete k jedinečné identifikaci aplikace Internet Explorer verze 5 nebo novější (na Microsoft Win32 a Unix pouze platformy), použít metodu isComponentInstalled nebo getComponentVersion metody chování CLIENTCAPS. Informace o těchto metodách naleznete na následujících webech společnosti Microsoft:
http://msdn2.microsoft.com/en-us/library/ms531357.aspx

http://msdn2.microsoft.com/en-us/library/ms531350.aspx
POZNÁMKA:: Tyto metody se nezdaří, pokud klientem není aplikace Internet Explorer 5 nebo novější (Microsoft Win32 a Unix platformy pouze).

Další informace

Pomocí skriptu na straně klienta

Funkci jazyka JScript lze určit verzi Služba Browser spuštěná v ze skriptu klienta. Funkce spuštěna na velká většina prohlížečů, které jsou aktuálně k dispozici a vrátí hlavní číslo verze pro všechny prohlížeče Microsoft Internet Explorer a nula (0) pro ostatní. Použití této funkce zajišťuje, že skript bude kompatibilní v budoucích verzích aplikace 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>
				
Při ověření čísla verze, vždy používejte skripty > = operátor, namísto = operátor pro zajištění kompatibility s budoucí verze. Existující skripty, které konkrétně například zkontrolovat userAgent rovna "msie 3," by měl být změněn pro použití > operátor = tak, aby skripty i rozpoznat aplikaci Internet Explorer 4.0.

Následující příklad ukazuje, jak lze zjistit verzi prohlížeče od skript na straně klienta. Všimněte si, že v tomto příkladu nekontroluje konkrétně verze platformy, jako je například systém Windows 95, Windows NT, Windows 3.1 a tak dále vyžadující kontrolu samostatné userAgent podřetězec případně:
<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>
				

Pomocí skriptu na straně serveru

POZNÁMKA:: Na Request.ServerVariables("HTTP_USER_AGENT") může být použita metoda místo BrowserType objekt ve skriptu na straně serveru. Další informace získáte klepnutím na tlačítko znalostní báze Microsoft Knowledge Base:
272413 Jak určit typ prohlížeče ve skriptu na straně serveru bez objektu BrowserType
Součást schopností prohlížeče, která je dodávána s ASP (Active Server Pages) obsahuje popis funkcí skriptů Webový prohlížeč klienta porovnáním hlavičce User-Agent protokolu HTTP s položky BROWSCAP.Soubor INI. Chcete-li, aby aplikace ASP ke zjištění Podpora prohlížeče pro nové funkce aplikace Internet Explorer 4.0, kopii nejnovější BROWSCAP.INI z webu Cyscape:
http://www.cyscape.com/ASP/Browscap/
Zkopírujte jej do adresáře %windows%\system32\inetsrv\asp\cmpnts a spouštět skript na straně serveru podobně jako v následujícím příkladu.

V tomto příkladu konkrétně využívá nové funkce dynamického HTML je-li aktuální prohlížeč Internet Explorer 4.0 nebo vyšší:
<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>
				

Odkazy

Referenční v cestovní Active Server Pages (ASP) mapy

Vlastnosti

ID článku: 167820 - Poslední aktualizace: 23. dubna 2011 - Revize: 3.0
Klíčová slova: 
kbFAQ kbhowto kbscript kbmt KB167820 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:167820
Právní omezení pro obsah znalostní báze týkající se produktů, jejichž podpora byla ukončena
Tento článek byl napsán o produktech, pro které společnost Microsoft již neposkytuje nadále podporu. Článek je tedy nabízen v takovém stavu, v jakém je, a nebude již nadále aktualizován.

Dejte nám zpětnou vazbu

 

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