Ir para conteúdo

Arquivado

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

João Augusto

[Resolvido] Mudança de cor em formulário

Recommended Posts

Ai galera beleza/??

To precisando de uma ajuda teria com fazer uma função para mudar a cor de inputs com name´s diferentes.

Sendo que ele mudaria a cor e a fonte quando fosse clicado e estivesse nele e quando saísse do input voltasse a cor normal.

Fico no aguardo....

Compartilhar este post


Link para o post
Compartilhar em outros sites

primeiro, você coloca no CSS:

 

input:active, input.over{
	background:#999;
	color:#F00;
	}

no input:active, quer dizer que qdo ele for clicado, vai passar a ter aquela cor de fundo e da fonte(nesse caso, cinza e vermelho).

mas como o IE só aceita :active pra links, então criei a classe over, pra usar em um javascript

 

<script language="javascript">
window.onload = function() {
	if (document.all) {
		obj = document.getElementsByTagName("input");
		for(i=0; i<obj.length; i++){
			obj[i].onclick=function() {		
				this.className+=" over";
				  }
			  obj[i].onmouseout=function() {
				  this.className=this.className.replace (" over", "");
   				}
		}
  }
 }
</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ficou muito bom o seu script parabéns....

Mais acho que me xpressei um pouco erradamente, no caso seria quando o focus estivesse no input ele mudaria de cor, tanto clicando quanto indo pelo tab.

Se você puder me ajudar novamente irei ficar altamente grato.

=]

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ai consegiu resolver......

window.onload = function() {
	if (document.all) {
		obj = document.getElementsByTagName("input_text");
		for(i=0; i<obj.length; i++){
			obj[i].onfocus=function() {		
				this.className+=" over";
				  }
			obj[i].onblur=function() {
				 this.className=this.className.replace (" over", "");
				  }
		}
  }
}
</script>

 

Só o meu único problema agora é pk eu so quero ele agindo nos inputs text...

será que tem como???

vlw....

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenta fazer um teste p ver se os inputs são do tipo text

axo q isso aqui resolve

 

window.onload = function() {
	if (document.all) {
		obj = document.getElementsByTagName("input_text");
		for(i=0; i<obj.length; i++){
			if(obj[i].type="text")
			{
						obj[i].onfocus=function() {		
					 this.className+=" over";
					 }
					 obj[i].onblur=function() {
					 this.className=this.className.replace (" over", "");
					 }
		   }
		}
  }
}
</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não rola assim eu tb ja havia testado e naum tinha funcionado....

ele naum aplica o efeito....

Mais obrigado pela atenção se você conseguir me ajudar nisso ia te agradecer mt msm vlw......

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha, eu modifiquei um pouco o codigo e funcionou

 

input[type=text]:focus, .over{
	background:#999;
	color:#F00;
	}

window.onload = function() {
	if (document.all&&document.getElementById) {
		obj = document.getElementsByTagName("input");	
		for(i=0; i<obj.length; i++){
	if(obj[i].type=="text")
	{
				obj[i].onfocus=function() {		
				 this.className=" over";
				  }
			obj[i].onblur=function() {
				 this.className=this.className.replace (" over", "");
				  }
	}
			}
  }
}

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

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.