Foros del Web » Programando para Internet » Javascript »

Cambiar imagen cada X segundos

Estas en el tema de Cambiar imagen cada X segundos en el foro de Javascript en Foros del Web. Hola tengo una etiqueta <img> y quiero que la imagen que contiene se cambia cada x segundos, me canse de buscar algun codigo ya escrito ...
  #1 (permalink)  
Antiguo 15/06/2011, 18:20
Avatar de manumaf  
Fecha de Ingreso: mayo-2007
Ubicación: Argentina
Mensajes: 854
Antigüedad: 16 años, 11 meses
Puntos: 6
Cambiar imagen cada X segundos

Hola tengo una etiqueta <img> y quiero que la imagen que contiene se cambia cada x segundos, me canse de buscar algun codigo ya escrito ya que no se de javascript y ninguno me funciona, alguien me pasa alguno?
  #2 (permalink)  
Antiguo 15/06/2011, 19:14
Avatar de Naahuel  
Fecha de Ingreso: marzo-2011
Ubicación: localhost
Mensajes: 796
Antigüedad: 13 años, 1 mes
Puntos: 192
Respuesta: Cambiar imagen cada X segundos

Acá tenés un ejemplo sencillo:

Tenés que editar la variable "tiempo" y el array de imágenes.

Código HTML:
Ver original
  1. <!DOCTYPE html>
  2. function rotar_imagen(){
  3.   var tiempo = 1000;//tiempo en milisegundos
  4.   var arrImagenes = ['http://3.bp.blogspot.com/_bVS2bdfO4As/RkvjtoibTxI/AAAAAAAAAso/c1Y93BkfBrs/s320/01_HomerSimpson.gif','http://www.seeklogo.com/images/H/Homer_Butt_Homero_Trasero-logo-807B1B6A2E-seeklogo.com.gif', 'http://2.bp.blogspot.com/__UX7GOPM7wI/SeAOEWkWsWI/AAAAAAAAAWQ/0xaOwEIue_I/s200/Homer_Simpson.png'];
  5.  
  6.   _img = document.getElementById('rotativo');
  7.  
  8.   //cargar la 1er imagen
  9.   _img.src = arrImagenes[0];
  10.   var i=1;
  11.   setInterval(function(){
  12.     _img.src = arrImagenes[i];
  13.     i = (i == arrImagenes.length-1)? 0 : (i+1);
  14.   }, tiempo);
  15. }
  16. </head>
  17. <body onload="rotar_imagen();">
  18.   <img id="rotativo"  />
  19. </body>
  20. </html>
__________________
nahueljose.com.ar

Última edición por Naahuel; 15/06/2011 a las 19:28
  #3 (permalink)  
Antiguo 24/01/2012, 13:50
 
Fecha de Ingreso: enero-2012
Mensajes: 1
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: Cambiar imagen cada X segundos

Este script es muy bueno, se le podria añadir un enlace a cada imagen,
  #4 (permalink)  
Antiguo 28/02/2012, 11:21
 
Fecha de Ingreso: febrero-2012
Mensajes: 4
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Cambiar imagen cada X segundos

Hola,

Yo en java tampoco soy un experto...mas bien un "dummy"...este script me ha parecido perfecto...lo único sabría alguien decirme como ponerle un enlace a las imágenes....muchas gracias de ante mano.
  #5 (permalink)  
Antiguo 28/02/2012, 14:12
Avatar de Naahuel  
Fecha de Ingreso: marzo-2011
Ubicación: localhost
Mensajes: 796
Antigüedad: 13 años, 1 mes
Puntos: 192
Respuesta: Cambiar imagen cada X segundos

Y estimo que podrías usar algo así:

Código HTML:
Ver original
  1. <!DOCTYPE html>
  2. function rotar_imagen(){
  3. * var tiempo = 1000;//tiempo en milisegundos
  4.     var arrImagenesMiniatura = [
  5.         'http://3.bp.blogspot.com/_bVS2bdfO4As/RkvjtoibTxI/AAAAAAAAAso/c1Y93BkfBrs/s320/01_HomerSimpson.gif',
  6.         'http://www.seeklogo.com/images/H/Homer_Butt_Homero_Trasero-logo-807B1B6A2E-seeklogo.com.gif',
  7.         'http://2.bp.blogspot.com/__UX7GOPM7wI/SeAOEWkWsWI/AAAAAAAAAWQ/0xaOwEIue_I/s200/Homer_Simpson.png'
  8.     ];
  9.     var arrImagenesGrandes = [
  10.         'http://3.bp.blogspot.com/_bVS2bdfO4As/RkvjtoibTxI/AAAAAAAAAso/c1Y93BkfBrs/s320/01_HomerSimpson.gif',
  11.         'http://www.seeklogo.com/images/H/Homer_Butt_Homero_Trasero-logo-807B1B6A2E-seeklogo.com.gif',
  12.         'http://2.bp.blogspot.com/__UX7GOPM7wI/SeAOEWkWsWI/AAAAAAAAAWQ/0xaOwEIue_I/s200/Homer_Simpson.png'
  13.     ];
  14. *
  15. * _a = document.getElementById('imagen-rotativo');
  16.   _img = _a.appendChild(document.createElement("img"));
  17.  
  18. *
  19. * //cargar la 1er imagen
  20. * _img.src = arrImagenesMiniatura[0];
  21. * var i=1;
  22. * setInterval(function(){
  23. * * _img.src = arrImagenesMiniatura[i];
  24. * * _a.href = arrImagenesGrandes[i]; //link a imagen mas grande
  25. * * i = (i == arrImagenesMiniatura.length-1)? 0 : (i+1);
  26. * }, tiempo);
  27. }
  28. </head>
  29. <body onload="rotar_imagen();">
  30. * <a id="imagen-rotativo" href="#"></a>
  31. </body>
  32. </html>

Ahora tenés dos arreglos, uno para las imagenes miniatura y el otro para las grandes. Se entiende que deben tener la misma cantidad de elementos y que el elemento 1 de las miniaturas corresponde al elemento 1 de las grandes y así.

Este código no me gusta nada. Usamos enmarcado en el html, es poco mantenible, los arreglos así separados son difíciles de cargar con un lenguaje en el servidor, etc.
__________________
nahueljose.com.ar
  #6 (permalink)  
Antiguo 29/02/2012, 03:08
 
Fecha de Ingreso: febrero-2012
Mensajes: 4
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Cambiar imagen cada X segundos

Muchas gracias Naahuel por tu super codigo java...GRACIASSSS!!!!!!!...
yo tambien he conseguido hacer algo...y me funciona...que es lo que mas me sorprende.

Código HTML:
Ver original
  1. function rotar_imagen(){
  2.   var tiempo = 5000;//tiempo en milisegundos
  3.   var arrImagenes = ['xxxxxxx.jpg','xxxxxxx.png', 'xxxxxxx.png'];
  4.   var arrhref = ['http://www.xxxxxxx.com','http://www.xxxxxxx.com', 'http://www.xxxxxxx.com']
  5.  
  6.   _img = document.getElementById('rotativo');
  7.   _a = document.getElementById('rotativos');
  8.  
  9.   //cargar la 1er imagen
  10.   _img.src = arrImagenes[0];
  11.   _a.href = arrhref[0];
  12.   var i=1;
  13.   var y=1;
  14.   setInterval(function(){
  15.     _img.src = arrImagenes[i];
  16.     _a.href = arrhref[y];
  17.     i = (i == arrImagenes.length-1)? 0 : (i+1);
  18.     y = (y == arrhref.length-1)? 0 : (y+1);
  19.   }, tiempo);
  20. }
  21.  
  22. -------------------------
  23.  
  24. <a id="rotativos" target="_blank"><img id="rotativo"  /></a>

Ya os digo...puede que haya algo que no se necesite en el código ya que no tengo mucha idea de JAVA...pero me funciona..JEJEJE.

MUCHAS GRACIAS POR TU COLABORACIÓN NAAHUEL!!!!!
  #7 (permalink)  
Antiguo 24/05/2013, 08:27
 
Fecha de Ingreso: octubre-2012
Ubicación: Bogota
Mensajes: 2
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Cambiar imagen cada X segundos

Hola... El codigo me funciono perfecto pero necesito q las imagenes ocupen todo el ancho de la pantalla...
Como con estos codigos:

width="100%" height=""

Pero no se como ponerlos en el codigo

Gracias
  #8 (permalink)  
Antiguo 27/05/2013, 02:28
 
Fecha de Ingreso: febrero-2012
Mensajes: 4
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Cambiar imagen cada X segundos

Hola juanchosim

He probado una cosa así rápidamente y creo que esto te puede funcionar... creas en CSS lo siguiente:

Código HTML:
<style type="text/css">
img{max-width:100%}
</style> 
y cuando crees la imagen la creas de un tamaño superior al ancho normal de las pantallas...yo por ejemplo he creado una img de ancho 2000 px y alto el que sea y al aplicar este css la imagen se me ha re dimensionado a 1407px de ancho (al visualizarlo en el navegador), es decir se me ha ajustado al ancho de mi navegador.

Espero te sirva, salud2
  #9 (permalink)  
Antiguo 27/05/2013, 02:30
 
Fecha de Ingreso: febrero-2012
Mensajes: 4
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Cambiar imagen cada X segundos

Cita:
Iniciado por juanchosim Ver Mensaje
Hola... El codigo me funciono perfecto pero necesito q las imagenes ocupen todo el ancho de la pantalla...
Como con estos codigos:

width="100%" height=""

Pero no se como ponerlos en el codigo

Gracias
Hola juanchosim

He probado una cosa así rápidamente y creo que esto te puede funcionar... creas en CSS lo siguiente:

Código HTML:
Ver original
  1. <style type="text/css">
  2. img{max-width:100%}

y cuando crees la imagen la creas de un tamaño superior al ancho normal de las pantallas...yo por ejemplo he creado una img de ancho 2000 px y alto el que sea y al aplicar este css la imagen se me ha re dimensionado a 1407px de ancho (al visualizarlo en el navegador), es decir se me ha ajustado al ancho de mi navegador.

Espero te sirva, salud2

Etiquetas: segundos
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:46.