Criar Web, manuais e recursos para desenvolvimento web
Manuais
Programas
FAQS
Diretório
Comunidade
  Inicio > Manuais > Workshop de Javascript
SEÇÕES
Manuais relacionados
+Workshop de Javascript
Categorias
+Javascript
+Scripts em Javascript

Índice do Manual Workshop de Javascript
+ Efeitos rápidos com Javascript
+ Abertura e configuração de popups com Javascript
+ Acessso por senha Javascript
+ Rollover com Javascript
+ Navegador dinâmico Javascript
+ Navegador desdobrável
+ Navegador desdobrável com frames
+ Texto em movimento na barra de estado
+ Marcar ou desmarcar todos os checkboxes de um formulário com Javascript
+ Desabilitar o menu contextual do navegador com Javascript
+ Relógio em Javascript
+ Scripts diferentes para cada navegador
+ Tamanho dos campos relativo ao navegador
+ Estilos diferentes para cada navegador
+ Tabela de cores com Javascript
+ Sub-menu em outra janela
+ Degradê de cor Javascript
+ Validar inteiro no campo de formulário
+ Exemplos de funcionamento da classe String
+ Exemplo de funcionamento de Date
+ Link aleatório Javascript
+ Geração de números aleatórios Javascript
+ Comprovar se as senhas são iguais
+ Ex. de trabalho com formulários. Calculadora simples
+ Enviar ao navegador a outra página se não tiver Javascript
+ Confirmação de envio de formulário
+ Javascript para se posicionar em um select
+ Inibir um campo texto de formulário com Javascript
+ Camadas com Internet Explorer 5, 6, Netscape 6, 7 e Opera
+ Mostrar e ocultar camadas com IE 5,6 NS 6,7
+ Movimento de Camadas com IE 5,6 NS 6,7
+ Escritura nas Camadas com IE 5, 6, NS 6, 7
+ Como iluminar tabelas, células ou filas
+ Inibir radio button com Javascript
+ Atualizar dois frames com um só link
+ Calcular a idade em Javascript
+ Iluminar formulários com CSS e Javascript
+ Autozoom de texto com Javascript
+ Javascript para evitar que a página se mostre em um frame
+ Elementos de formulário select associados
+ Conta os caracteres escritos em um textarea
+ Passo de parâmetros em HTML com client-side Javascript
+ Moldura dinâmica em Javascript com texto que muda
+ Criação de gráficos de barras com Javascript
+ Jogos em Javascript
+ Cross-Browser. DHTML compatível com todos os navegadores.
+ HTML Area. Editor WYSIWYG
+ Ocultar um e-mail de um link para evitar o spam
+ Função em Javascript para a inserção de datas
+ DHTML Calendar
+ Gerar uma cor aleatória com Javascript
+ A aprendizagem na Internet
+ Menu Dinâmico com Javascript
+ Página que muda aleatoriamente a cor de fundo
+ Script de recarregamento da página com Javascript
+ Mudar a cor às células de uma tabela com Javascript
+ Pop-ups DHTML – OpenPopups
+ Validar a extensão de um arquivo a subir com Javascript
+ Detectar a resolução da tela do usuário com Javascript
+ Esconder a URL de um link na barra de estado
+ Como integrar conteúdo RSS em minha página?
+ Fazer com que um iframe se ajuste à altura de uma janela com Javascript
+ É vantajoso o uso de ParseInt para validar números?
+ Efeito para desabilitar/habilitar o fundo da Página
+ Validar número de checkbox marcados com Javascript
+ Evitar que um textarea supere um número de caracteres permitidos
+ Javascript não intrusivo
+ Controle de introdução de caracteres de um campo de texto com Javascript
+ Listagem de diferentes Framework Javascript
+ Script para detecção de suporte a Ajax, Cookies e ActiveX
+ Leitor RSS com Javascript
+ Funções para validação alfanumérica de strings em Javascript
+ Script para informar da segurança de uma senha, com Javascript

Descrição dos capítulos

Parceiros
- CSS para Web Design
- S.O.S Designers
- Slackware-Brasil
- Crie seu Web site
- Oficina da Net
- CodigoFonte.net


Estilos diferentes para cada navegador

Scripts que nos permitem aplicar estilos diferentes aos elementos da página, em um dos casos nos apoiamos na tecnologia CSS para aumentar a potência.


Graças a um e-mail de um usuário que queria colocar um fundo de tela diferente dependendo do tipo de navegador que nos fez pensar em dois scripts que podem servir para este Workshop de Javascript.

Trata-se de uns scripts que permitem mostrar estilos na página web dependendo do navegador com o qual se acessa à página, de modo que se um usuário entra com IExplorer veria um fundo, tipografias e outros elementos com formas ou estilos diferentes dos que veria outro usuário que tenha acessado com Netscape.

Começamos pelo exemplo exato que nos pedia o usuário do e-mail, para colocar somente fundos diferentes. É um script bastante específico que para muitos de vocês parecerá "inútil", mas pelo menos servirá para aprender alguma coisinha.

Com a etiqueta <BODY>

A primeira idéia que tive foi de escrever a etiqueta <BODY> inteira dentro de um bloco de script onde temos um if que nos permite distinguir entre navegadores.

O código ficaria algo assim:

<html>
<head>
    <title>Fundos diferentes para cada navegador</title>
</head>

<script language="JavaScript">
if (document.layers)
    document.write ("<body background=nts.jpg>")
else
    document.write ("<body background=ie.jpg>")
</script>

</body>
</html>


Vemos que para averiguar se temos Netscape ou Internet Explorer acessamos ao objeto layers do documento. Como só Netscape tem esse objeto, somente para Netscape essa avaliação será verdadeira. Isto é um truque rápido, embora deveria ser estudado à parte porque não funciona bem com todos os navegadores, por exemplo, Netscape 6 mostraria o fundo de Explorer. Na verdade, só se distingue entre Netscape 4 e todos os demais navegadores, já que certamente, esse objeto só está disponível nesse navegador.

Voltando ao exemplo, dependendo se se utiliza Netscape 4 ou outro navegador se mostra uma etiqueta <BODY> com um atributo, o da imagem de fundo diferente.

Com estilos

Existe outra maneira de atribuir fundos diferentes dependendo do navegador e não só os fundos como também tipos de letra, tamanhos e em geral todo o que pode ser definido utilizando os estilos CSS.

Neste exemplo, supomos que sabe algo de CSS e da definição de estilos para todo um site incluído em um arquivo externo com sintaxe CSS. Para conhecer as CSS temos um excelente manual em CriarWeb.com.

A base do exemplo é a mesma, utilizamos um bloco script no qual averiguamos que navegador está sendo utilizando e dependendo do navegador mostra-se uma etiqueta com uns atributos ou outros. Na verdade, a etiqueta que colocamos dinamicamente em função do navegador é <LINK> que serve para incluir uma declaração de estilos externa.

Seria algo assim:

<html>
<head>
    <title>Linko com estilos dinamicamente</title>
<script LANGUAGE="JavaScript">
if (document.layers) {
    document.write("<LINK REL='stylesheet' HREF='estilo_nt.css' TYPE='text/css'>"); }
else {
    document.write("<LINK REL='stylesheet' HREF='estilo_ie.css' TYPE='text/css'>"); }
</script>
</head>

<body>

<h1>Bem-vindos a minha página</h1>

</body>
</html>


Como vemos, no caso de estar em Netscape 4 se carregará a folha de estilos chamada "estilo_nt.css" e se nosso navegador é outro qualquer se carregará "estilo_ie.css".

Este segundo caso pode ser utilizado para muitas coisas. Principalmente pode-se utilizar para evitar um efeito que existe no uso de diferentes navegadores, que consiste em que na mesma definição de fontes, os tamanhos das mesmas diferem em Netscape e Internet Explorer. (As mesmas fontes, em Netscape saem menores que em Explorer). É por isso que incluindo uma folha de estilos diferente pode-se colocar os tamanhos das fontes desejados para cada navegador.

Isso é tudo. Esperemos que estes scripts dêem idéias para resolver outros problemas.

Autoria e outras referências sobre este artigo

Manuais relacionados com este artigo
Dentro de Workshop de Javascript

Categorias relacionadas
Através das categorias do nosso diretório podem ser encontrados outros tipos de recursos relacionados com este artigo:
+ Entrar em Javascript
+ Entrar em Scripts em Javascript


Comentário sem rever
Entre os comentários não revistos podem ter alguns interessantes que tenham sido enviado recentemente.
 Foi encontrado um comentário sem rever

VerVer os comentários não revistos



Sobre nós | Copyright | Anuncie | Entrar em contato <criarweb>

Hospedado por Hostnet Hospedagem de Sites