Foros del Web » Programando para Internet » Javascript »

Cambiar color de fondo div con javascript

Estas en el tema de Cambiar color de fondo div con javascript en el foro de Javascript en Foros del Web. Buenas! Alguien sabe cómo cambiar el color de fondo de un div desde javascript? He probado esto pero no me funciona. También he probado con ...
  #1 (permalink)  
Antiguo 05/12/2012, 18:05
 
Fecha de Ingreso: enero-2009
Mensajes: 213
Antigüedad: 15 años, 3 meses
Puntos: 0
Pregunta Cambiar color de fondo div con javascript

Buenas!

Alguien sabe cómo cambiar el color de fondo de un div desde javascript?

He probado esto pero no me funciona. También he probado con backgroundColor y nada.
Código Javascript:
Ver original
  1. document.getElementById('prueba').style.background='#CCCCCC';

El div existe y he mirado en la consola de javascript y no aparece ningún error.

Gracias.
  #2 (permalink)  
Antiguo 05/12/2012, 18:16
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Cambiar color de fondo div con javascript

Con backgroundColor debería funcionar, ¿cómo tienes el HTML?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 05/12/2012, 18:23
 
Fecha de Ingreso: enero-2009
Mensajes: 213
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Cambiar color de fondo div con javascript

Código HTML:
Ver original
  1. <div id="probar" onclick="cambiaColor();">
  2. Cambia Color
  3. </div>
  4. <div id="prueba">Este div cambia de color</div>

y en la función tengo el código que he puesto en el primer mensaje. He hecho este ejemplo sencillo para hacer la prueba pero nada..es extraño.

En el css tengo puesto otro color así que tampoco falla por eso y en la función entra seguro porque le he puesto un alert y me lo abria.
  #4 (permalink)  
Antiguo 05/12/2012, 18:26
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Cambiar color de fondo div con javascript

Yo lo probé y funciona perfectamente con ese código usando backgroundColor
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 05/12/2012, 18:28
 
Fecha de Ingreso: enero-2009
Mensajes: 213
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Cambiar color de fondo div con javascript

Yo tampoco entiendo el por qué no funciona, lo había usado varias veces antes y andaba...
  #6 (permalink)  
Antiguo 05/12/2012, 18:30
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Cambiar color de fondo div con javascript

Habría que ver la página completa. O haz pruebas, elimina las cosas superfluas; si usas alguna herramienta como Firebug revisa los estilos en cada ejecución, etc.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #7 (permalink)  
Antiguo 05/12/2012, 18:31
 
Fecha de Ingreso: enero-2009
Mensajes: 213
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Cambiar color de fondo div con javascript

Voy a probarlo ;)

Gracias por las respuestas David!
  #8 (permalink)  
Antiguo 17/12/2012, 18:29
Avatar de Garot  
Fecha de Ingreso: marzo-2010
Ubicación: Mar de Dirac
Mensajes: 121
Antigüedad: 14 años, 1 mes
Puntos: 7
Respuesta: Cambiar color de fondo div con javascript

Hola, con permiso ... tengo un problema muy parecido y me gustaría plantearlo acá.

En realidad consigo que el fondo cambie de color por medio de un enlace

Código HTML:
Ver original
  1. <a href="#" onclick="cambiar_fondo();"></a>

Pero quiero hacer que cuando vuelvan a hacer click sobre el enlace el fondo desaparezca.
Entonces uso el siguiente script

Código Javascript:
Ver original
  1. function cambiar_fondo() {
  2.                 obj = document.getElementById('id_del_div');
  3.                 obj.style.backgroundColor = (obj.style.backgroundColor == '#CCCCCC') ? 'none' : '#CCCCCC';
  4.             }

El caso es que cambia el fondo pero cuando vuelvo a hacer click sobre el enlace continua igual, no desaparece el fondo.

Esta bien la lógica? alguna sugerencia?

Muchas gracias!
  #9 (permalink)  
Antiguo 18/12/2012, 02:20
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Cambiar color de fondo div con javascript

Por un lado, dependiendo del navegador, al leer backgroundColor ya no te devolverá el color en el mismo formato que le diste, es mejor que uses otra variable para controlar el cambio. Y, por otro lado, "none" no es válido como valor para el backgroundColor, sería "transparent" para sin color de fondo.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #10 (permalink)  
Antiguo 18/12/2012, 08:41
Avatar de Garot  
Fecha de Ingreso: marzo-2010
Ubicación: Mar de Dirac
Mensajes: 121
Antigüedad: 14 años, 1 mes
Puntos: 7
Respuesta: Cambiar color de fondo div con javascript

Es verdad "el backgroundColor" me devuelve el valor del fondo en RGB

Entonces hice unos pequeños cambios y funciono
Código Javascript:
Ver original
  1. function cambiar_fondo() {
  2.                 obj = document.getElementById('id_del_div');
  3.                 obj.style.backgroundColor = (obj.style.backgroundColor == 'rgb(204, 204, 204)') ? 'transparent' : '#CCCCCC';
  4.             }

Gracias Davis, saludos!

Etiquetas: color, 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 20:07.