Foros del Web » Programando para Internet » Javascript »

Carga inteligente de páginas con iframes

Estas en el tema de Carga inteligente de páginas con iframes en el foro de Javascript en Foros del Web. Hola, amigos: Tengo una página con un "iframe" (marco interno), dentro del cual se cargan otras páginas según lo que seleccione el usuario en un ...
  #1 (permalink)  
Antiguo 11/12/2004, 14:23
Avatar de Magnus  
Fecha de Ingreso: mayo-2003
Ubicación: Madrid. España
Mensajes: 79
Antigüedad: 20 años, 11 meses
Puntos: 0
Carga inteligente de páginas con iframes

Hola, amigos:

Tengo una página con un "iframe" (marco interno), dentro del cual se cargan otras páginas según lo que seleccione el usuario en un menú.

Quisiera que, al acceder el usuario, a través de un buscador, a una de las páginas que se cargan dentro del iframe, se abra automáticamente la página que lo contiene (la página principal), pero sin olvidar que aparezca dentro del iframe la página a la que llegó a través del buscador (es decir, la que le interesa, y no la que está destinada a cargarse por defecto)

He visto en las FAQs algo parecido, pero nada que se ajuste a mis necesidades.

La solución no debe de ser muy complicada. Espero impaciente vuestras respuestas.

Feliz navidad, y gracias por adelantado.
__________________
Magnus
  #2 (permalink)  
Antiguo 11/12/2004, 14:43
Avatar de Carlitos
Usuario no validado
 
Fecha de Ingreso: mayo-2001
Ubicación: Zaragoza
Mensajes: 1.304
Antigüedad: 22 años, 11 meses
Puntos: 25
Prueba con esto:

En tu página inicial (index.htm) escribe esto en la parte donde ahora tienes <iframe ...
Código:
<script> 
var cad = new String(document.location);
document.write(' <iframe src=")
if (cad.indexOf("?") != -1)
   {
   document.write(cad.substring(cad.indexOf("?")+1,cad.length))
   }
else
   {
   document.write('"la_pagina_que_se_carga_al_inicio.htm"')
   }
</script>
y en cada página que se debe cargar en el iframe, pon esto en el <head>
Código:
<script> 
if(top==self) top.location="index.htm?"+document.location
</script>
También tienes algo parecido en las FAQ's: http://www.forosdelweb.com/showthrea...336#post278336


Te lo he puesto bastante básico. Sin estilos, ancho, alto... si no sabes modificarlo, vuelve a preguntar.

Un saludete.
  #3 (permalink)  
Antiguo 11/12/2004, 15:47
Avatar de Magnus  
Fecha de Ingreso: mayo-2003
Ubicación: Madrid. España
Mensajes: 79
Antigüedad: 20 años, 11 meses
Puntos: 0
Te agradezco mucho la ayuda, Carlitos, pero no me funciona.

He seguido tus instrucciones, sustituyendo la etiqueta <iframe... por el script de marras, pero en la página, al publicarla, no aparece ningún iframe.

Algo falla.

El post que me indicas de las FAQs ya lo había visto, pero no es para un iframe, sino para framesets, y, aunque intenté adaptarlo a mis necesidades, no fui capaz.

¿Alguna idea?
__________________
Magnus
  #4 (permalink)  
Antiguo 12/12/2004, 09:30
Avatar de Carlitos
Usuario no validado
 
Fecha de Ingreso: mayo-2001
Ubicación: Zaragoza
Mensajes: 1.304
Antigüedad: 22 años, 11 meses
Puntos: 25
ok ya se que es lo que falla. Te lo paso corregido.
Código:
<script> 
var cad = new String(document.location);
document.write('<iframe src=')
if (cad.indexOf("?") != -1)
   {
   document.write(cad.substring(cad.indexOf("?")+1,cad.length))
   }
else
   {
   document.write('"la_pagina_que_se_carga_al_inicio.htm"')
   }
document.write("></iframe>")
</script>
lo demás igual.

Te he puesto en rojo lo que cambia/falta para que veas lo que era.

Un saludo.

Última edición por Carlitos; 12/12/2004 a las 09:39
  #5 (permalink)  
Antiguo 12/12/2004, 12:01
Avatar de Magnus  
Fecha de Ingreso: mayo-2003
Ubicación: Madrid. España
Mensajes: 79
Antigüedad: 20 años, 11 meses
Puntos: 0
Fantástico. Funciona perfectamente. Solo he tenido que personalizar el iframe y todo va como la seda, al menos en IE y Netscape para Macintosh. Luego tendré que probarlo en PC, pero supongo que irá bien.

Gracias mil.
__________________
Magnus
  #6 (permalink)  
Antiguo 12/12/2004, 13:00
Avatar de Carlitos
Usuario no validado
 
Fecha de Ingreso: mayo-2001
Ubicación: Zaragoza
Mensajes: 1.304
Antigüedad: 22 años, 11 meses
Puntos: 25
De nada.
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 13:29.