Precisa de um freelancer, códigos-fonte e exemplos completos? Bem-vindo(a) ao meu site. Além de realizar alguns serviços como freelancer eu tenho alguns códigos-fonte e exemplos completos de Java, Delphi, PHP, Python, C/C++, Hibernate, JPA, Spring, JSP, Servlets, Ruby, Ruby On Rails e muitas outras linguagens e frameworks. Veja como falar comigo clicando aqui.
Tratamento de Erros e Técnicas
de Detecção de Browsers :: Obtendo o nome e versão
do navegador do usuário
Nos tópicos anteriores você
aprendeu técnicas muito valiosas para detectar e se recuperar
de erros de JavaScript em suas páginas web. Técnicas
de detecção de browser é um complemento
muito útil, visto que é por meio delas que você
conseguirá fazer com que funcionalidades diferentes sejam
executadas pelos browsers a que são destinadas.
O primeiro passo na detecção do browser é
aprender como obter algumas informações úteis
sobre o navegador usado pelo usuário. Tais informações
podem ser obtidas por meio do objeto navigator.
Este objeto possui propriedades que nos permitem obter o nome
do browser, a versão, os tipos de mime suportados, a
lista de plug-ins instalados, etc.
A tabela abaixo mostra todas as propriedades que podem ser usadas:
Propriedades
Descrição
appCodeName
Representa o "Code Name"
do browser
appName
O nome do browser (ex: Microsoft
Internet Explorer)
appVersion
Informação sobre a versão
do browser
cookieEnabled
Um valor true ou false que indica se cookies
estão habilitados no browser
language
Retorna a lingua padrão do browser
(somente Mozilla)
mimeTypes[]
Um array de MIME types suportados pelo
browser (somente Mozilla)
platform[]
A plataforma na qual o browser está
sendo executado.
plugins
Um array contendo todos os plug-ins atualmente
instalados no browser (somente Mozilla)
systemLanguage
Propriedade no IE que returna a lingua
padrão do sistema operacional
userAgent
String fornecida pelo browser como o cabeçalho
user-agent
userLanguage
Propriedade do IE que retorna a lingua
preferida nas configurações do usuário
Veja um trecho de código que mostra como obter o nome
do navegador:
<html>
<head>
<title>Informações sobre o browser</title>
</head>
<body>
<script language="javascript">
<!--
var nome = window.navigator.appName;
window.alert("O nome do browser é: "
+ nome);
//-->
</script>
</body>
</html>
Execute este código usando Internet Explorer e verá
a seguinte mensagem:
O
nome do browser é: Microsoft Internet Explorer
Execute agora usando Firefox e terá uma surpresa. A mensagem
exibida é:
O
nome do browser é: Netscape
Isso nos leva a conclusão que devemos utilizar a propriedade
userAgent. Veja uma pequena modificação
do código anterior:
<html>
<head>
<title>Informações sobre o browser</title>
</head>
<body>
Execute a página usando Internet Explorer. O resultado
agora é:
O
browser é: Mozilla/4.0 (compatible; MSIE 6.0; Windows
NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; .NET CLR
2.0.50727)
Se estiver usando Firefox o resultado será:
O browser é:
Mozilla/5.0 (Windows; U; Windows NT 5.1; pt-BR; rv:1.7.12) Gecko/20050919
Firefox/1.0.7
Haverá ocasiões em que você precisará
verificar a versão de um determinado browser. Como este
tutorial está sendo escrito usando o Internet Explorer
e o Forefox, veremos como obter apenas as versões destes
dois browsers. Mais tarde, com o conhecimento adquirido, você
será capaz de aplicar a mesma técnica com os demais
browsers.
Veja um trecho de código que obtém a versão
do Internet Explorer:
<html>
<head>
<title>Informações sobre o browser</title>
</head>
<body>
<script language="javascript">
<!--
if(navigator.appVersion.indexOf("MSIE")!=
-1){
var temp = navigator.appVersion.split("MSIE");
var versao = parseFloat(temp[1]);
window.alert("Você está
usando a versão " + versao + " do IE.");
}
else{
window.alert("Você não
está usando IE");
}
//-->
</script>
</body>
</html>
Execute este exemplo no Internet Explorer e você obterá
o seguinte resultado:
Você
está usando a versão 6 do IE.
Veja agora como obter a versão do Firefox:
<html>
<head>
<title>Informações sobre o browser</title>
</head>
<body>
<script language="javascript">
<!--
if(navigator.userAgent.indexOf("Firefox")!=
-1){
var temp = navigator.userAgent.indexOf("Firefox")
+ 8;
var versao = navigator.userAgent.substring(temp,
temp + 6);
alert("Você está usando
a versão " + versao + " do Firefox");
}
else{
window.alert("Você não
está usando Firefox");
}
//-->
</script>
</body>
</html>
Execute este exemplo no Firefox e obterá o seguinte resultado:
Todo o conteúdo deste site,
quando não devidamente observado, pertence a seus idealizadores
e não
poderá ser usado para outras finalidades senão estudo e
aprimoramento de técnicas de programação.
Certifique-se de ler asnotas legaisantes de proceder com
o acesso e leitura do
conteúdo disponibilizado nestas páginas.