Comunidad de diseño web y desarrollo en internet online

Activar enlace de capa automáticamente cada x segundos

Citar            
MensajeEscrito el 20 Abr 2015 04:59 pm
Hola buenas tardes!

Tengo un problema y no se como solucionarlo.

Tengo una capa que cuando la pulsas realiza un cambio en un formulario y lo que hace es pasar a ver la siguiente imagen. Es como una galería (tipo slider)
Pues lo que quiero yo es que esta capa se pulse sola cada X segundos, así vayan pasando todas las imágenes solas.

Supongo que con javascript o jquery esto es posible pero no tengo ni idea de como montarlo.

Espero que me podáis ayudar, porque empiezo a estar desesperado :(

Por circunsxik

32 de clabLevel



 

chrome
Citar            
MensajeEscrito el 20 Abr 2015 06:35 pm
Pues me temo que tendrás que aprender JavaScript.

Lo que dices se puede resolver simplemente con setTimeout():

Código Javascript :

setTimeout(function () {
  document.getElementById('id_del_div_donde_se_hace_clic_para_pasar_el_slider').click();
},
10000); // cada 10 segundos

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 21 Abr 2015 10:11 am
Gracias DriverOp! Me ha ido genial tu respuesta. Lo que lo explique mal yo, porque no es el mismo div, cada vez cambia, pero bueno eso lo he sabido arreglar yo. Mira he conseguido crear esto:

Código Javascript :

setInterval(function () {
   setTimeout(function () {
     document.getElementById('next2').click();
   }, 1000);
   setTimeout(function () {
     document.getElementById('next3').click();
   }, 2000);
   setTimeout(function () {
     document.getElementById('next4').click();
   }, 3000);
   setTimeout(function () {
     document.getElementById('next5').click();
   }, 4000);
   setTimeout(function () {
     document.getElementById('next6').click();
   }, 5000);
   setTimeout(function () {
     document.getElementById('next1').click();
   }, 6000);
}, 6000); // cada 6 segundos


Que hace lo que yo quería con un único problema, que tarda 6 segundos en empezar. Quiero que empiece al cargar la pagina, pero si quito los 6 segundos del setInterval no da tiempo a que termine todo que vuelve a empezar... Seguro que es una tontería pero no se como hacerlo :(

Por circunsxik

32 de clabLevel



 

chrome
Citar            
MensajeEscrito el 21 Abr 2015 11:38 am
Vale ya esta arreglado. Al final lo he solucionado así:

Código Javascript :

setTimeout(function ABC () {
   setTimeout(function () {
      document.getElementById('next2').click();
   }, 1000);
   setTimeout(function () {
      document.getElementById('next3').click();
   }, 2000);
   setTimeout(function () {
      document.getElementById('next4').click();
   }, 3000);
   setTimeout(function () {
      document.getElementById('next5').click();
   }, 4000);
   setTimeout(function () {
      document.getElementById('next6').click();
   }, 5000);
   setTimeout(function () {
      document.getElementById('next1').click();
   }, 6000);
   repe = setTimeout(ABC, 6000); //Vuelvo a iniciar la función entera para crear un bucle
}, 0000); // A los 0 segundos empieza


No se si es la forma mas correcta de hacerlo pero así hace lo que quiero :)

Por circunsxik

32 de clabLevel



 

chrome
Citar            
MensajeEscrito el 21 Abr 2015 12:07 pm
Me alegro que lo hayas resuelto :)

Por DriverOp

Claber

2510 de clabLevel



 

opera

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.