Funções Genéricas


Funções Genéricas

Conteúdo

E aí pessoal tudo bom??

A um tempo atrás tive uma grande tarefa de ocultar e aparecer diversas divs dentro de várias páginas, até aí tudo bem, fazer sumir e aparecer é fácil, mas imagina ter que acrescentar uma div numa página e em outra ter que retirar, ia lá e mudava a função javascript de cada página, num belo dia estava olhando para minha tela com saco cheio de ter que modificar mais uma vez a mesma função que já tinha modificado umas sete vezes a uns dez minutos atrás e tive um estalo. Reduzi as minhas cinco funções para somente uma. E é isso que vou mostrar como é fácil e que pode ser utilizado para várias outras coisas.

Uma das antigas funções que utilizava era:

<script type=”text/javascript”>
var flag;
function mostraEscondeDivs(campo1, campo2, campo3){
if(flag == 0 || flag == null){
document.getElementById(campo1).style.display = ‘block’;
document.getElementById(campo2).style.display = ‘block’;
document.getElementById(campo3).style.display = ‘block’;
flag = 1;
}else{
document.getElementById(campo1).style.display = ‘none’;
document.getElementById(campo2).style.display = ‘none’;
document.getElementById(campo3).style.display = ‘none’;
flag = 0;
}
}
</script>

E a cada inclusão e/ou retirada de divs tinha de ser modificada a função javascript.

Agora vamos ver a nova e reduzida função:

<script type=”text/javascript”>
var flag;
function mostraEscondeDivs(){
_divs = arguments.length;
if(flag == 0 || flag == null){
for(var x=0; x < _divs; x++){
document.getElementById(arguments[x]).style.display = ‘block’;
}
flag = 1;
}else{
for(var x=0; x < _divs; x++){
document.getElementById(arguments[x]).style.display = ‘none’;
}
flag = 0;
}
}
</script>

Pronto, temos uma função que conta quantos parâmetros passamos e esconde ou mostra as divs exemplo:

javascript:mostraEscondeDivs(‘div1′,’div2′,’div3′);
javascript:mostraEscondeDivs(‘div1′);
javascript:mostraEscondeDivs(‘div1′,’div2′,’div3′,’div4′,’div5′,’div6′);

Uma mão na roda na hora de retirar ou incluir divs, a única coisa que devo mudar é na chamada da função, onde incluo ou retiro os nomes das divs.

O mesmo pode ser feito para formulário, quer ver se determinados campos estão vazios e não quer fazer um if else só para isso, utilize o arguments, para pegar os parâmetros passados na função e verifique se estão ou não vazios.

Para quem quiser segue os arquivos zipado desse artigo, tanto o exemplo do código antigo, como o novo.

Bom espero que gostem e dêem sugestões para os próximos.

Autor: Eughenio Constantino- Colunista Web Standards do Portal MXSTUDIO

Qualquer dúvida acesse o nosso fórum.

Escrito por Eughenio on outubro 8, 2007. Arquivado em Usabilidade. Você pode seguir as respostas a esse artigo pelo RSS 2.0. Você pode deixar respostas para esse artigo

2 respostas a Funções Genéricas

  1. MUITO BOA SUA MATERIA, PARABENS

  2. Pingback: ELC Digital » Blog Archive » Funções Genéricas

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

*

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>