Ir para conteúdo
Fórum Script Brasil
  • 0

Reconhecimento Do Navegador E Caixa De Mensagem


Vinícius Doideira

Pergunta

Como faço para exibir uma caixa de mensagem apenas para usuários que acessem a minha página com o IE6?

Por exemplo, o cara que está usando esse navegador pré-histórico acessa minha página e imediatamente aparece uma caixa de mensagem dizendo algo como "Esta página é melhor visualizada com navegadores bons ou pelo menos com o IE7 ou superior." e o botãozinho "ok" – e para os demais usuários (os felizes usuários do Opera e do Firefox e mesmo do IE7, por exemplo) nada aparece.

Editado por Vinícius Doideira
Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

não é que não funciona... a logica que eu coloquei foi justamente para exibir mensagem quando o navegador for diferente do IE, foi erro de interpretação minha. Vamos la:

<script language="JavaScript">
if (navigator.appName == "Microsoft Internet Explorer" && parseInt(navigator.appVersion) < 7)
{
alert("Esta página é melhor visualizada com navegadores bons ou pelo menos com o IE7 ou 

superior.");
}
</script>

só aparece a mensagem quando o navegador for um IE com versao inferior ao 7

Link para o comentário
Compartilhar em outros sites

  • 0

Ainda não funcionou, acho que o problema está no "navigator.appVersion", por que agora a mensagem aparece em todas as versões do IE (não parece mais no Firefox)... :(

Como já devem ter percebido eu não entendo nada de javascript, então fico fazendo testes... Quando coloca-se algo como:

</script>

<script type="text/javascript">
<!--
   var age = navigator.appVersion;      
   
   alert("Browser: " + age);    
//-->
</script>
Aparece uma janela assim no Firefox: "Browser: 5.0 (Windows;pt-BR)" e uma assim no IE7: "Browser: 4.0 (compatible; MSIE 7.0; Windows NT 5.1; NET CLR 1.1.4322; NET CLR 2.0.50727)" – no IE6 não lembro ao certo, mas aparece algo parecido começando também com 4.0 E se colocarmos algo assim:
</script>

<script type="text/javascript">
<!--
   var age = parseInt(navigator.appVersion);      
   
   alert("Browser: " + age);    
//-->
</script>

Aparece uma janela com a seguinte informação no Firefox: "Browser: 5"

e no IE7: "Browser :4" e no IE6 também aparece "Browser: 4".

Ou seja, não pode ser parseInt(navigator.appVersion) porque ele vai ser igual tanto para o IE7, quanto para o IE6...

Será que tem outra solução?

Link para o comentário
Compartilhar em outros sites

  • 0

Vinicius, voce precisa entender o que cada coisa faz:

parseInt passa de string para inteiro.

Explicando a linha do codigo:

if (navigator.appName == "Microsoft Internet Explorer" && parseInt(navigator.appVersion) < 7)

se (nome do naveador for igual a "Microsoft Internet Explorer" E a versao do navegador for menor que 7)

manda uma mensagem de alerta ao usuario.

a mensagem só vai ser disparada se as duas condições (navegador = IE e Versao superior a 7) forem verdadeiras

O codigo eu testei no IE (versao 4) e no Firefox, o acontece:

- IE: abre alerta porque é um IE e a versao é menor que 7 (as duas condições são verdadeiras)

- FF: não acontece nada porque não é IE e a versao é menor que 7 (só uma condição foi verdadeira, e para cair no alerta, as duas tem que ser.

Bom, o negocio é ver exatamente o que você quer que aconteça...o que vai mudar no codigo é só o IF, mas você continuará usando o navigator.appName e navigator.appVersion

Link para o comentário
Compartilhar em outros sites

  • 0

é, eu já entendi isso tudo (eu pesquisei em alguns manuais ;))... Por isso, expliquei aquele lance.

Quando se coloca o parseInt, tanto para o IE7, quanto para o IE6, o valor que o script retorna para navigator.appVersion é 4, porque para o navigator.appVersion de ambos é "4.0 (compatible; MSIE X.0; Windows NT 5.1; NET CLR 1.1.4322; NET CLR 2.0.50727)" onde X=7 ou 6...

Ou seja, o que eu quero (que é mostrar a mensagem apenas para quem usa versões antigas do IE) não é possível, pois – não sei porque cargas d'água – o valor para navigator.appVersion não é o número correspondente à versão digamos "comercial" do navegador.

Mas tudo bem, vou mostrar a mensagem para todos os usuários do IE, independentemente da versão utilizada.

Muito obrigado, Andreia.

Ah, só pra saber, estou querendo fazer isso, pois vou mudar o visual do meu blog e eu usei muito css, e o IE6 não se dá muito bem com determinadas tags que utilizei. O endereço é http://peixenarede.blogspot.com a partir de amanhã já estará totalmente diferente de como é hoje.

Valeu!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...