Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] Cambiar de fondo cada cierto tiempo.

Estas en el tema de Cambiar de fondo cada cierto tiempo. en el foro de Javascript en Foros del Web. Tengo el siguiente @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Javascript : Ver original < script type = "text/javascript" > var fondos = [ 'imagen1.jpg' , 'imagen2.jpg' , 'imagen3.jpg' ...
  #1 (permalink)  
Antiguo 09/12/2012, 02:01
Avatar de seoista  
Fecha de Ingreso: septiembre-2003
Ubicación: Pues leyéndote
Mensajes: 1.076
Antigüedad: 20 años, 7 meses
Puntos: 59
Pregunta Cambiar de fondo cada cierto tiempo.

Tengo el siguiente
Código Javascript:
Ver original
  1. <script type="text/javascript">
  2. var fondos = ['imagen1.jpg','imagen2.jpg','imagen3.jpg'];
  3. var fondo_actual = 0;
  4. var CambiarFondo = function(){
  5. if (fondo_actual == fondos.length) {
  6. fondo_actual = 0;
  7. }
  8. var precargar =fondo_actual++;
  9. var precargar2 = precargar+2;
  10. document.body.style.backgroundImage = 'url('+ fondos[precargar]+ ')';
  11. document.getElementById('precarga').style.backgroundImage =  'url('+fondos[precargar2]+ ')';
  12. }
  13. window.setInterval(CambiarFondo, 20000);
  14. </script>
En Firefox hace bien los cambios, pero no en Internet Explorer.

¿Qué tengo que añadir, quitar o cambiar para que funcione en I.E., si es que se puede?

Muchas gracias.

Saludos.
__________________
· No contesto por M.P.
  #2 (permalink)  
Antiguo 09/12/2012, 02:27
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Cambiar de fondo cada cierto tiempo.

Hola Alberto:

No sé si has copiado tu código o si lo retocaste, pero me pareció ver un par de cosas incorrectas.

no sé si tenga que ser +1 el valor de precargar2...

Para que no se vaya fuera del rango del array podrías terminar con % fondos.length...

Yo haría:

Código:
function CambiarFondo() {
precargar = fondo_actual++ % fondos.length;
precargar2 = precargar + 2 % fondos.length;

// el resto tal como lo tienes...
}
La asignación de los fondos parece estra bien.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 09/12/2012, 04:20
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Cambiar de fondo cada cierto tiempo.

La script según veo es una que te indiqué hace algún tiempo @seoista, y si funciona en IE (9 y 8/7 utilizando herramientas de desarrollo de IE9),
Demo:
http://foros.emprear.com/javascript/...orotarbg2.html
En realidad hace dos cosas, cambia el fondo y precarga en cache la imagen que sigue en la sucesión

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #4 (permalink)  
Antiguo 10/12/2012, 01:24
Avatar de seoista  
Fecha de Ingreso: septiembre-2003
Ubicación: Pues leyéndote
Mensajes: 1.076
Antigüedad: 20 años, 7 meses
Puntos: 59
Respuesta: Cambiar de fondo cada cierto tiempo.

Muchas gracias a ambos (@caricatos, @emprear).

Entre los dos me habeis solucionado el problema.
Ya funciona bien tanto en Firefox cómo en I.E.

Me reitero muchas gracias.

Saludos
__________________
· No contesto por M.P.

Etiquetas: cada, 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 09:53.