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
+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

Descrição dos capítulos

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


Mudar a cor às células de uma tabela com Javascript

Vemos um par de métodos para alterar a cor de uma célula de uma tabela com javascript.


Veremos neste artigo um par de soluções a uma pergunta típica de trabalho com Javascript: mudar a cor à célula de uma tabela dinamicamente e como resposta a ações do usuário. Este exemplo pode ser realizado muito facilmente e ofereceremos um par de soluciones, que podemos aplicar dependendo do caso concreto em que nos encontremos.

A primeira solução que vamos ver é como mudar a cor de uma célula ao passar o mouse por cima. Quando entrarmos com o mouse na célula deve mudar para uma cor e quando sairmos a mudaremos por outra.

O segundo caso que vamos realizar é mudar a cor da célula como resposta a eventos de elementos que estão fora da própria célula. Em concreto, mudaremos a cor de uma célula quando se acione um formulário que está fora das células a mudar.

Mudar a cor de uma célula ao passar o mouse por cima

É um caso muito típico que se pode ver em muitas webs. Este exemplo é bastante simples de fazer com CSS, sem necessidade de escrever nem uma linha de código Javascript, porém, apesar disso o mostraremos aqui.

No exemplo teremos uma tabela com várias células e para cada uma teremos definido o evento onmouseover e onmouseout, para chamar a uma função que se encarregue de mudar a cor quando se entre na célula e quando se saia, respectivamente.

A tabela terá esta forma:

<table width=100>
<tr>
   <td bgcolor="#dddddd" id="celula1" onmouseover="mudar_cor_over(this)" onmouseout="mudar_cor_out(this)">Campo numero 1</td>
</tr>
<tr>
   <td bgcolor="#dddddd" id="celula2" onmouseover="mudar_cor_over(this)" onmouseout="mudar_cor_out(this)">Campo numero 2</td>
</tr>

<tr>
   <td bgcolor="#dddddd" id="celula10" onmouseover="mudar_cor_over(this)" onmouseout="mudar_cor_out(this)">Campo numero 10</td>
</tr>
</table>

As funções que se encarregam de alterar a cor recebem por parâmetro a palavra this, que é uma referência à célula onde está o evento. Se estamos no evento da célula 1, this faz referência a essa mesma célula 1. As funções são as seguintes:

function mudar_cor_over(celula){
   celula.style.backgroundColor="#66ff33"
}
function mudar_cor_out(celula){
   celula.style.backgroundColor="#dddddd"
}

Como se pode ver, recebem a célula cuja cor se deseja mudar (que se enviou com a palavra this no manejador do evento). Logo, executam a sentença necessária para mudar a cor.

Mudar a cor de uma célula sem passar a referência this

O segundo caso que havíamos adiantado que íamos fazer, era mudar a cor a uma célula desde outra parte da página. Vimos que, se estamos na mesma célula, podemos enviar uma referência do próprio campo com a palavra this, porém se não estamos codificando um evento da célula, e sim estamos em outro lugar do código da página, não teremos possibilidade de enviar essa simples referência.

Então, nos torna necessário obter a referência da célula por outro mecanismo. Entra em jogo a função de Javascript (que em realidade é um método do objeto document) chamada getElementById(). Esta função recebe o nome de um identificador e devolve uma referência ao elemento que tem esse identificador.

Atribui-se identificadores aos elementos de HTML com o atributo id. Desta maneira:

<td id="celula1">

Podemos ver no código da tabela, escrito linhas acima, que cada célula tem um identificador definido. Utilizaremos esse identificador para obter a referência à célula que desejamos alterar sua cor.

Por exemplo, se quisermos obter uma referência à célula com identificador "celula1", utilizaríamos a chamada a essa função assim:

celula = document.getElementById("celula1")

Logo, com a referência da célula, podemos mudar a cor como vimos antes:

celula.style.backgroundColor="#dddddd"

Em nosso exemplo para ilustrar este método criamos um formulário com dois campos de texto e um botão. No primeiro campo de texto escreveremos o número da célula cuja cor queremos mudar. No segundo, escreveremos o nome da cor que queremos colocar ao campo, ou seu código RGB. Quando apertarmos ao botão, chamaremos a uma função que se encarregará de mudar a cor da célula.

O formulário terá um código como este:

<form name=fcolor>
Numero de celula: <input type=text name=celula size=3>
<br>
Cor: <input type=text name=minhacor size=8>
<br>
<input type=button value="Mudar cor" onclick="muda_cor()">
</form>


E a função javascript que se encarregará de mudar a cor terá este código:

function muda_cor(){
   celula = document.getElementById("celula" + document.fcolor.celula.value)
   celula.style.backgroundColor=document.fcolor.minhacor.value
}


Como se pode ver, para obter a referência utilizamos a função document.getElementById() e passamos o id da célula que queremos mudar sua cor. O identificador da célula se compõe pela palavra "celula" e o número da célula, que tiramos do formulário.

Logo, se coloca na célula a cor que se tira do outro campo do formulário.

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 Scripts em Javascript


Comentários dos visitantes
Os comentários dos visitantes são para ampliar a informação do artigo. Todos podem participar.
Acrescentar um comentário do artigo Acrescentar um comentário do artigo



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

Hospedado por Hostnet Hospedagem de Sites