Fondo aleatorio peeeeero....
Hola a todos, me has surgido una pequeña cuestión a la hora de desarrollar un sitio web, el cliente quiere que al entrar en la web aparezca un fondo aleatorio, tengo un javascript básico que realiza ésto sin problemas añadiendo un onLoad en la etiqueta body para llamar a la función en cuestión.
El js que utilizo es:
fondos = new Array();
fondos[0] = "../imgs/fondos/fondo01.jpg";
fondos[1] = "../imgs/fondos/fondo02.jpg";
fondos[3] = "../imgs/fondos/fondo03.jpg";
fondos[4] = "../imgs/fondos/fondo04.jpg";
fondos[5] = "../imgs/fondos/fondo05.jpg";
function fondoBody() {
var image = fondos[Math.floor(Math.random()*fondos.length)]
document.html.style.backgroundImage="url("+image+")";
}
La cosa es que si voy a cualquier sección de la web recarga la página y me cambia de nuevo el fondo, pero lo que yo quiero es que en esa, digamos, sesión de visita a la web el fondo sea siempre el mismo y que sólo cambie cuando volvemos a entrar en el index.
No se si la cosa pasará por controlar la "sesión de visita a la web" mediante cookies o algo por el estilo...
¿alguien que pueda arrojar algo de luz a esto?
Un saludo, feliz año y gracias de antemano a tod@s!...
JuaRoAl
Podrías intentarlo "guarramente" poniendo el css en el html, por ejemplo:
<?php miFondo=códigoFondoAleatorio ?>
<body style="background-image: <?php echo miFondo ?>">
Y controlar el código con una variable de sesión.
Como te digo, quizás es un poco guarrillo, pero debería funcionar...
Alo
Hola a todos, aún no he sido capaz de solucionar este tema, alguien conoce algún método sencillo de realizar esto?...
Un saludo!
Alo
Hola!, creo que me interesa mas que cambie el fondo cuando ha salido de la página y vuelva a entrar, existe la manera de eliminar la cookie cuando sale del site? (sin cerrar el navegador)...
Un saludo!
feliper
Y si lo haces controlando la hora ?
de 10 a 12 que se cargue un fondo, de 12 a 14 otro distinto,
un usuario vería dos fondos distintos solo si entra en la pagina a las 11:59 y carga otra 2 minutos después, puede pasar pero no creo que sea muy grave ...
saludos !!
Alo
Entonces la cosa sería crear una cookie, asignarla un valor aleatorio para que me coja un fondo aleatorio y se mantendría hasta que se cierre el navegador? se que las cookies tienen un parámetro de tiempo de expiración, pero desaparecen también al cerrar el navegador? soy muy novato con JavaScript y crear el código desde cero para mi es un poco complicado...
gracias por tu respuesta!
microbians Staff
Si yo creo que tendrías que usar cookies o HTML5 Web Storage. Si tiras de un plugin de jQuery te va a resultar mas sencillo:
+ jQuery-Storage-API