Foros del Web » Programando para Internet » Javascript »

Cambiar color a un elemento div en javascript

Estas en el tema de Cambiar color a un elemento div en javascript en el foro de Javascript en Foros del Web. hola que tal, estoy realizando un proyecto, y bueno tengo algunos problemas con unos divs que estoy generando de manera dinamica, estos deverian funcionar como ...
  #1 (permalink)  
Antiguo 03/09/2013, 11:26
 
Fecha de Ingreso: septiembre-2013
Mensajes: 8
Antigüedad: 5 años, 9 meses
Puntos: 0
Pregunta Cambiar color a un elemento div en javascript

hola que tal, estoy realizando un proyecto, y bueno tengo algunos problemas con unos divs que estoy generando de manera dinamica, estos deverian funcionar como botones y al pulsarlos que cambien de color, hasta esa parte estan bien, el problema es que cuando pulso otro el anterior se queda pintado, alguien me podria ayudar o dar un tip de como arreglar esto

onclick =pag(this,event) // este onclick ejecuta el script


function pag(obj,e) {

var x1 = new String()
x1 = obj.id;

document.getElementById(x1).style.backgroundColor = '#16A4EB';

}
  #2 (permalink)  
Antiguo 03/09/2013, 11:44
Avatar de MarioAraque
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Valencia
Mensajes: 1.398
Antigüedad: 9 años, 8 meses
Puntos: 265
Respuesta: Cambiar color a un elemento div en javascript

Creo que cambian de color todos porque les pones el mismo id a los divs, deberías trabajar con clases así los diferencias.

De todos modos el parámetro "obj" hace referencia a this, por lo que si haces esto debería funcionar:

Código Javascript:
Ver original
  1. function pag(obj,e) {
  2.    obj.style.backgroundColor = '#16A4EB';
  3. }

Saludos.
__________________
Mi web personal
  #3 (permalink)  
Antiguo 03/09/2013, 11:54
 
Fecha de Ingreso: septiembre-2013
Mensajes: 8
Antigüedad: 5 años, 9 meses
Puntos: 0
Respuesta: Cambiar color a un elemento div en javascript

hola , gracias por responder, si funciona de la manera que tu muestras doy clic en un div y lo cambia, doy clic en otro div y lo cambia pero se quedan en ese color y lo que quiero es que solamente al que haya dado clic cambie y los demas vuelvan al color que tenian anteriormente, no se si algunas condiciones puedan servir pero no encuentro la manera
  #4 (permalink)  
Antiguo 03/09/2013, 12:02
Avatar de MarioAraque
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Valencia
Mensajes: 1.398
Antigüedad: 9 años, 8 meses
Puntos: 265
Respuesta: Cambiar color a un elemento div en javascript

Lo siento, he olvidado eso, asi quedaria:

Código Javascript:
Ver original
  1. function pag(obj,e) {
  2.    var divs = document.getElementsByClassName('customdiv'),
  3.           j,
  4.           l;
  5.    for(i=0, l = divs.length; i < l; i++) {
  6.       divs[i].style.backgroundColor = 'transparent';
  7.    }
  8.  
  9.    obj.style.backgroundColor = '#16A4EB';
  10. }

Debes ponerle un class a los divs, le puse uno de ejemplo pero debes reemplazarlo por lo que quieras.
No estoy seguro de que funcione "transparent" dentro del style, no lo pude probar al código pero no creo que tenga muchos fallos.

Saludos.
__________________
Mi web personal

Etiquetas: color, elemento, funcion
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:13.