Foros del Web » Programando para Internet » Javascript »

No me cambia el background (Javascript + CSS)

Estas en el tema de No me cambia el background (Javascript + CSS) en el foro de Javascript en Foros del Web. La idea es tener un Menú con varios links, al ponerte encima de cada uno de esos links, que el fondo de la página cambie. ...
  #1 (permalink)  
Antiguo 13/11/2012, 02:55
Avatar de lenders  
Fecha de Ingreso: diciembre-2011
Mensajes: 58
Antigüedad: 12 años, 4 meses
Puntos: 2
Pregunta No me cambia el background (Javascript + CSS)

La idea es tener un Menú con varios links, al ponerte encima de cada uno de esos links, que el fondo de la página cambie.

Mi codigo es este:

Código PHP:
<html>
<
head>
<
link rel="stylesheet" type="text/css" href="css/estilo_index.css"

<
script type='text/javascript' src='scripts/cambiar_fondo.js'></script>

</head>

<body>
<a onmouseover="cambiar_fondo()" href="#">MENU 1</a>
</body>

</html> 
Código PHP:
html {
backgroundurl(../img/fondo.jpgno-repeat center center fixed
-
webkit-background-sizecover;
-
moz-background-sizecover;
-
o-background-sizecover;
background-sizecover;

Código PHP:
function cambiar_fondo(){

var 
imagen document.getElementsByTagName("html");
imagen.style.background"url('../img/fondo2.jpg')";


Con la consola de errores del Chrome me dice:
Cannot set property 'background' of undefined
Y evidentemente no me cambia el fondo

Alguna ayuda?
  #2 (permalink)  
Antiguo 13/11/2012, 05:57
(Desactivado)
 
Fecha de Ingreso: noviembre-2002
Ubicación: Ciudad Autónoma de Buenos Aires
Mensajes: 2.367
Antigüedad: 21 años, 6 meses
Puntos: 317
Respuesta: No me cambia el background (Javascript + CSS)

Hay varios yerros, pero los más graves están en JS. La próxima no olvidés poner el código completo, no desarmado, y con el doctype para saber si hay alguna incompatibilidad por ese lado.

Estás referenciando el HTML por su etiqueta, y como verás dice getElementsByTagName("html"), por lo tanto hay que decirle también a cuál de los elementos HTML apuntás. Nosotros sabemos que no puede haber más de uno, pero esa llamada es con ítem

getElementsByTagName("html")[0]

También estás reemplazando todo lo que tiene que ver con el fondo, y lo que en verdad querés cambiar es la imagen, así que solamente apuntá al background-image

imagen.style.backgroundImage= "url('../img/fondo2.jpg')";

Del resto hablamos otro día.
  #3 (permalink)  
Antiguo 13/11/2012, 07:59
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: No me cambia el background (Javascript + CSS)

la manera correcta de hacerlo es con styleSheets
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #4 (permalink)  
Antiguo 13/11/2012, 09:26
(Desactivado)
 
Fecha de Ingreso: noviembre-2002
Ubicación: Ciudad Autónoma de Buenos Aires
Mensajes: 2.367
Antigüedad: 21 años, 6 meses
Puntos: 317
Respuesta: No me cambia el background (Javascript + CSS)

Bueno, supongo que en algún lugar del mundo ya es otro día.

Sí, es cierto, si se ponen estilos desde la hoja de estilos, lo ideal es cambiarlos allí mismo.

Etiquetas: css, fondo
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 22:38.