Foros del Web » Programando para Internet » Javascript »

cargar un iframe diferente a los x segundos

Estas en el tema de cargar un iframe diferente a los x segundos en el foro de Javascript en Foros del Web. hola Tengo dos iframes, iframe superior->arriba.htm iframe inferior->abajo.htm Como se hace para que cuando el htm 'abajo' se cargue, pues pasados X segundos cargue un ...
  #1 (permalink)  
Antiguo 19/08/2005, 05:45
 
Fecha de Ingreso: marzo-2002
Mensajes: 466
Antigüedad: 22 años, 1 mes
Puntos: 0
cargar un iframe diferente a los x segundos

hola

Tengo dos iframes,
iframe superior->arriba.htm
iframe inferior->abajo.htm

Como se hace para que cuando el htm 'abajo' se cargue, pues pasados X segundos cargue un htm diferente al existente en el iframe superior.?

Saludos y gracias
  #2 (permalink)  
Antiguo 19/08/2005, 05:52
Avatar de crcbad  
Fecha de Ingreso: enero-2005
Mensajes: 302
Antigüedad: 19 años, 3 meses
Puntos: 0
Puedes hacerlo, es sencillito, cuando cargues el documento en el iframe de debajo, en ese documento define la etiqueta BODY de la siguiente forma:

<BODY onLoad=window.setTimeout("parent.frames["nombreTarget"].location.href='arriba.htm'",5000)>

Lo que hacemos es que cuando esté cargada esa pagina del iframe de debajo, esperamos 5 segundos (5000), lo cual puedes cambiar, y que cambie el documento del frame especificado que si mal no recuerdo era así parent.frames[].location....

Espero que te sirva :)
__________________

:cool: [ http://eruben.sytes.net ] :cool:


Las dos frases que te ayudarán a salir adelante:
  • No hay mujer fea, solo copas de menos. :borracho:
  • Ante la duda, siempre coge la más tetuda. :arriba:
  #3 (permalink)  
Antiguo 19/08/2005, 06:15
 
Fecha de Ingreso: marzo-2002
Mensajes: 466
Antigüedad: 22 años, 1 mes
Puntos: 0
va a ser q no

Hola..he probado...pero no me sale...el target se llama 'arriba'.

Pruebo asi
<BODY onLoad=window.setTimeout("parent.frames["arriba"].location.href='arriba.htm'",5000)>

Pero no sale.. ponme aqui como lo pondrias..porque no se si es que va dentro de los [] o si van con las " "

Gracias
  #4 (permalink)  
Antiguo 19/08/2005, 06:28
 
Fecha de Ingreso: marzo-2002
Mensajes: 466
Antigüedad: 22 años, 1 mes
Puntos: 0
ahora si

Buneo...yo despues de intentarlo sin tener mucha idea de esto de javascript...lo he realizado asi...

<BODY onLoad=window.setTimeout("top.arriba.location='arr iba.htm'",5000)>
....

De esta forma si se consigue que se abra el htm

Saludos y gracias
  #5 (permalink)  
Antiguo 19/08/2005, 06:30
Avatar de crcbad  
Fecha de Ingreso: enero-2005
Mensajes: 302
Antigüedad: 19 años, 3 meses
Puntos: 0
Vale, he tenido un error y tu otro creo, vamos a corregirlo a ver.

<BODY onLoad=window.setTimeout("parent.frames["arriba"].location.href='arriba.htm'",5000)>

Lo primero, el documento que cargas en el iframe se llama arriba.htm?? Yo lo he llamado asi por poner algo, pero el tuyo tendrá otro nombre o será una dirección web o lo que sea, eso hay que modificarlo.

Tambien hay que modificar las dobles comillas que van entre [] y ponerlas como simples, porque sino la función se corta, y no funciona, quedaria asi:

<BODY onLoad=window.setTimeout("parent.frames['arriba'].location.href='NombreDelDoc.htm'",5000)>

A ver si conseguimos que funcione :)
__________________

:cool: [ http://eruben.sytes.net ] :cool:


Las dos frases que te ayudarán a salir adelante:
  • No hay mujer fea, solo copas de menos. :borracho:
  • Ante la duda, siempre coge la más tetuda. :arriba:
  #6 (permalink)  
Antiguo 19/08/2005, 06:39
 
Fecha de Ingreso: agosto-2005
Mensajes: 20
Antigüedad: 18 años, 8 meses
Puntos: 0
Pregunta

perdon, una pregunta, como paras el timeout, hay una funcionpara eso creo:
clearTimeout("id del time out") --> pero lo que no se es cual es esa id
aver si me podeis ayudar con eso, y otra pregunta si no paras el timeout a cada 5 seg va cargando el frame de arriba???, es asi o setTimeout solo carga la funcion una vez despues de ejecutarse

gracias
  #7 (permalink)  
Antiguo 19/08/2005, 06:47
Avatar de crcbad  
Fecha de Ingreso: enero-2005
Mensajes: 302
Antigüedad: 19 años, 3 meses
Puntos: 0
Hola jhonyweb, efectivamente al establecer el setTimeout, cada 5 segundos se haría el refresco, en este caso del frame que queriams cambiar en cierto tiempo.

Si se quisiera parar, tendríamos que hacer referencia al window que es el que tiene puesto el timeout, con lo que con un simple window.clearTimeout(); debería valer.
__________________

:cool: [ http://eruben.sytes.net ] :cool:


Las dos frases que te ayudarán a salir adelante:
  • No hay mujer fea, solo copas de menos. :borracho:
  • Ante la duda, siempre coge la más tetuda. :arriba:
  #8 (permalink)  
Antiguo 19/08/2005, 06:55
 
Fecha de Ingreso: agosto-2005
Mensajes: 20
Antigüedad: 18 años, 8 meses
Puntos: 0
thx, muchas gracias tio....

una ultima pregunta, el efecto ese que tienes en el menu de tu web lo has hecho con java o con dhtml jeje
vemos!
  #9 (permalink)  
Antiguo 19/08/2005, 06:57
 
Fecha de Ingreso: agosto-2005
Mensajes: 20
Antigüedad: 18 años, 8 meses
Puntos: 0
y otra cosa:

si pones: window.clearTimeout(); pararias todos los setTimeout() que hubiera en window no?? si solo quieres parar uno en concreto que haces???? para eso es lo que yo te decia del id como argumento de clearTimeout()

saludos
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 08:31.