Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

maya10

Detectar navegador (browse) do visitante

Recommended Posts

Pessoal alguem pode me dar uma dica de como identificar o navegador no vistante, algumas coisas funcionão no IE e não funcionão no Chrome?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola maya10,

 

Para detectar o navegador do visitante de seu site use:

request.ServerVariables("HTTP_USER_AGENT")

Quanto ao Chrome, algumas funções JavaScript e estilos CSS realmente não surtem efeito por questões de incompatibilidade, assim como algumas só funcionam em determinados navegadores, aconselho a testar suas funções e estilos nos principais browsers, e utilizar algo que funcione bem em todos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

só complementando

 

<% 
nav = Request.ServerVariables("HTTP_USER_AGENT") 
if instr(nav,"MSIE") then 
   response.write "Seu navegador é Internet Explorer" 
elseif instr(nav,"Mozilla") then 
   response.write "Seu navegador provavelmente seja de Netscape" 
else 
   response.write "Seu navegador não é Netscape nem Explorer" 
end if 
%>

Utilizamos a saída da função InStr como expressão a avaliar no IF. Si InStr não encontrou nada, devolverá um zero, que será interpretado como um false. Se tiver encontrado a cadeia devolverá a posição do primeiro caractere, que será diferente de zero e será interpretada como true.

 

Não podemos estar certos de que o navegador seja Netscape porque não indica claramente em sua tag HTTP_USER_AGENT a marca do navegador.

 

Colocamos um caso no qual não sabemos que navegador é, ou melhor, que estamos convencidos que não é Explorer e nem Netscape. Serão poucos os casos de que não se possa detectar. Neste caso, estamos quase certos de que o navegador será antigo e devemos fazer ações básicas que sejam compatíveis com os navegadores menos avançados.

 

Browser Capabilites

 

Porém, esta não é a única forma de detectar o navegador. Existe um interessante objeto que pode nos devolver os dados que estamos buscando de uma maneira mais ordenada. Trata-se do componente Browser Capabilites, que é utilizado da seguinte forma:

 

<html> 
<head> 
   <title>Browser Capabilities</title> 
</head> 
<body> 

<% 
Set nav = Server.CreateObject("MSWC.BrowserType") 
%> 
Navegador: <%=nav.browser %> 
<br><br> 
Versão: <%=nav.versao%> 
<br><br> 

<% 
if (nav.vbscript = TRUE) then 
%> 
   Pode executar VBScript 
<% else %> 
   NAO pode executar VBScript 
<% end if %> 

<br><br> 

<% if (nav.javascript = TRUE) then %> 
   Pode executar Javascript 
<% else %> 
   NAO pode executar Javascript 
<% 
end if 
set bc=nothing 
%> 

</body> 
</html>

Pode ocorrer de não ser possível ver este exemplo em determinados navegadores por não detectarem corretamente os valores. Isto é devido a que o nosso servidor pode possuir o arquivo browscap.ini pouco atualizado.

 

A responsabilidade de que o arquivo não esteja bem atualizado é de nosso provedor de hosting, mas se em algum caso quisermos atualizar o arquivo podemos fazer. Para conseguir uma versão atualizada podemos visitar a página www.cyscape.com/browscap onde se pode baixar o arquivo.

 

Se temos um provedor de hosting deveriam se oferecer a atualizar o arquivo, mas se temos nosso próprio servidor poderemos atualiza-lo nós mesmos subscrevendo nosso browscap.ini atual, que em nosso sistema está no diretório c:\windows\system\inetsrv.

 

Este método é interessante, mas segundo nossa experiência não é o suficiente para assegurarmos que todos os navegadores se detectam corretamente. Uma última possibilidade é comprar um componente comercial, como o que vendem na mesma página onde podemos baixar browscap.ini, que informam que tem maiores possibilidades para detectar navegadores, plug-ins, definição de tela... O problema é que custa bastante dinheiro. www.cyscape.com.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.