Foros del Web » Programando para Internet » Javascript »

Imagen de fondo al azar

Estas en el tema de Imagen de fondo al azar en el foro de Javascript en Foros del Web. Buenas, mi duda es la siguiente, si vemos la página www.mueblesorts.com arriba del todo aparece una imagen de fondo, si actualizamos la página vemos como ...
  #1 (permalink)  
Antiguo 03/03/2011, 05:00
 
Fecha de Ingreso: febrero-2011
Mensajes: 30
Antigüedad: 13 años, 2 meses
Puntos: 0
Imagen de fondo al azar

Buenas, mi duda es la siguiente, si vemos la página www.mueblesorts.com arriba del todo aparece una imagen de fondo, si actualizamos la página vemos como esa imagen va cambiando, quiere decir que cada vez que iniciamos la página sale una imagen al azar, estoy revisando el código fuente de la página pero no logro ver en qué parte del mismo han logrado que cada vez que se inicie la página se ponga una imagen diferente, si vemos el código de una pagina al azar, la imagen de fondo aparece en la siguiente línea de código:

<div id="cabecera">
<img src="http://mueblesorts.com/images/50_imgcab.jpg" width="910px" height="425px" alt="" title="" />

pero esa imagen es una al azar, al actualizar la página, el código de esa línea cambiaría para mostrar otra imagen de fondo, en qué parte del código de esta página se consigue esto o con qué propiedad se podría conseguir? gracias!
  #2 (permalink)  
Antiguo 03/03/2011, 05:03
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: Imagen de fondo al azar

Hola:

Los lenguajes del servidor (asp, perl, php) no dejan rastro en las página, y ese efecto es tán sencillo como una lectura al azar en una base de datos, o un reordenamiento de un array... o...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 03/03/2011, 05:14
 
Fecha de Ingreso: febrero-2011
Mensajes: 30
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Imagen de fondo al azar

sí supongo que debe tener 7 u 8 imágenes del mismo tamaño etc y al azar introduce una de ellas de fondo, pero cómo se implementa esto?, no hay una forma más sencilla? la verdad es que es un efecto interesante que cada vez que entres te salga una imagen diferente y me gustaría saber cómo implementarlo y si es con lenguajes de servidor saber cómo hacerlo.
  #4 (permalink)  
Antiguo 03/03/2011, 05:18
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: Imagen de fondo al azar

Hola:

Dinos de que lenguaje del servidor dispones para mover el tema... por ejemplo, con oho se puede tener ese array, y reordenarlo con shuffle, pero si la imagen es igual para todo el día, entonces seguramente se haga el módulo de la división entre el día del año (Date) y el largo del array... pero en vez de dar palos de ciego, vayamos al lenguaje que te sirva...dínoslo, o reporta tú mismo el tema (un triangulito en los datos propios...)

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 03/03/2011, 05:31
 
Fecha de Ingreso: febrero-2011
Mensajes: 30
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Imagen de fondo al azar

No, de momento no sé de qué lenguajes vamos a disponer pq estamos desarrollando la web y solo tenemos el dominio, pero contratariamos el sitio con el lenguaje de servidor necesario, sabemos q queremos ese efecto, no q salga una imagen cada dia sino como en ésa página q cada vez q entres salga una imagen diferente al azar entre 8 por ejemplo, o igual en html se puede implementar para que muestre una imagen entre 8 al azar de alguna otra manera más sencilla o mediante un script¿?.

Última edición por jmfpuche; 03/03/2011 a las 05:39
  #6 (permalink)  
Antiguo 03/03/2011, 12:36
 
Fecha de Ingreso: febrero-2011
Mensajes: 30
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Imagen de fondo al azar

He encontrado este script que parece que lo hace bien:

<script type="text/javascript">
num = Math.round(Math.random()*3)
document.write('<img src="http://www.paginaweb.com/img/imagen' + num + '.jpg" alt="Pagina web">');
</script>

Pero lo que me sucede es que cada 3 veces, una no me sale imagen y en su lugar me sale en texto "pagina web", se trata de que siempre salga una imagen al menos, por qué me pasará esto? si elimino lo de alt="pagina web" sucede igual.
  #7 (permalink)  
Antiguo 03/03/2011, 12:48
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: Imagen de fondo al azar

Hola:

Esa función javascript, tiene el inconveniente de que cuando se desactiva el lenguaje (todos tenemos ese derecho) deja de funcionar; y el problema que tienes no es otro que no tienes bien los indices... creo que con un array de fondos sería mejor (y con muy pocas modificaciones se podría implementar en lenguajes del servidor):

fondos = ["fondo1.gif", "fondo2.gif", "fondo3.gif", "fondo4.gif"];
document.write("<img src='" + fondos[Math.floor(Math.random() * fondos.length)] + "' alt='fondo' />");

Si no me comí ninguna coma, eso funciona.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #8 (permalink)  
Antiguo 03/03/2011, 13:51
 
Fecha de Ingreso: febrero-2011
Mensajes: 30
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Imagen de fondo al azar

Tienes razón sobre el javascript si alguien lo desactivara no vería la página, los índices no sé a qué te refieres, creo que los tengo bien imagen1.jpg, imagen2.jpg..., pero bueno descarto javascript.

He probado con el código que me dices pero no sé si te refieres a ponerlo en un script, en una función, guardarlo en una variable o cómo, disculpa mi torpeza al respecto, pero si pongo ese código tal cual, me escribe toda la línea fondos=["fondo1.gif..., cómo lo implementas? gracias de nuevo.
  #9 (permalink)  
Antiguo 04/03/2011, 20:54
 
Fecha de Ingreso: febrero-2011
Mensajes: 30
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Imagen de fondo al azar

Alguien sabe como implementar las dos líneas a las que se refiere caricatos?,

fondos = ["fondo1.gif", "fondo2.gif", "fondo3.gif", "fondo4.gif"];
document.write("<img src='" + fondos[Math.floor(Math.random() * fondos.length)] + "' alt='fondo' />");

si alguien tiene idea sería una gran ayuda, ya que no consigo hacerlo sino es con javascript y eso tiene mucha limitacion, gracias.
  #10 (permalink)  
Antiguo 05/03/2011, 00:55
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: Imagen de fondo al azar

Cita:
Iniciado por jmfpuche Ver Mensaje
He encontrado este script que parece que lo hace bien:

<script type="text/javascript">
num = Math.round(Math.random()*3)
document.write('<img src="http://www.paginaweb.com/img/imagen' + num + '.jpg" alt="Pagina web">');
</script>

Pero lo que me sucede es que cada 3 veces, una no me sale imagen y en su lugar me sale en texto "pagina web", se trata de que siempre salga una imagen al menos, por qué me pasará esto? si elimino lo de alt="pagina web" sucede igual.
Hola:

Yo solo retoqué el script que encontraste, o sea que debes ponerlo justamente donde estaba el otro.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #11 (permalink)  
Antiguo 05/03/2011, 06:16
 
Fecha de Ingreso: febrero-2011
Mensajes: 30
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Imagen de fondo al azar

y cuál es la diferencia con el script que yo puse? no quedamos que la pega del script que puse era que si alguien tenía deshabilitado el lenguaje no se verían las imágenes? con este script pasaría igual o no?
  #12 (permalink)  
Antiguo 05/03/2011, 06:25
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: Imagen de fondo al azar

Hola:

¡Je, je!, la correción era del script que encontraste, y es javascript, pero con pocos retoques se puede usar en otros lenguajes... pero hay que saber cual.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #13 (permalink)  
Antiguo 05/03/2011, 09:20
 
Fecha de Ingreso: febrero-2011
Mensajes: 30
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Imagen de fondo al azar

Hmmm la verdad que ese código tal cual lo pusiste no me funciona, no sé si sobran comillas, si están mal las direcciones, el vector, pero no me funca, yo las imágenes las tengo en el directorio img, lo he intentado asi sin resultado, no se me ven las imágenes:

<script type="text/javascript">
fondos=["img/imagen1.jpg","img/imagen2.jpg","img/imagen3.jpg"];
document.write('<img src="fondos[Math.floor(Math.random() * fondos.length)]" alt="imagen" />');
</script>
  #14 (permalink)  
Antiguo 05/03/2011, 09:28
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola, jmfpuche

Ponlo sin comillas. Si pones "fondos[Math.floor(Math.random() * fondos.length)]" buscará una imagen con ese nombre y no la va a encontrar.

Muevo tu tema al foro de Javascript desde HTML.

Saludos,
  #15 (permalink)  
Antiguo 05/03/2011, 09:47
 
Fecha de Ingreso: febrero-2011
Mensajes: 30
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Imagen de fondo al azar

Igualmente no funciona con este codigo:

<script type="text/javascript">
fondos=["img/imagen1.jpg","img/imagen2.jpg","img/imagen3.jpg"];
document.write('<img src=fondos[Math.floor(Math.random() * fondos.length)] alt="imagen" />');
</script>

Pero es que si pusiera este otro codigo mas sencillo tampoco me muestra ni imagen, lo cual me hace pensar que el vector no funciona o no almacena:

<script type="text/javascript">
fondos=["img/imagen1.jpg","img/imagen2.jpg","img/imagen3.jpg"];
document.write('<img src=fondos[1] alt="imagen" />');
</script>

Etiquetas: fondo, html
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 16:28.