Foros del Web » Programando para Internet » Javascript »

Saber si existe pagina padre

Estas en el tema de Saber si existe pagina padre en el foro de Javascript en Foros del Web. Vamos a ver.. yo queria saber como se puede hacer para saber si una pagina se abre dentro de otra, y me voy a intentar ...
  #1 (permalink)  
Antiguo 05/07/2006, 04:42
Avatar de Azrael666  
Fecha de Ingreso: noviembre-2004
Mensajes: 652
Antigüedad: 19 años, 5 meses
Puntos: 1
Saber si existe pagina padre

Vamos a ver.. yo queria saber como se puede hacer para saber si una pagina se abre dentro de otra, y me voy a intentar explicar lo mejor posible jaja:

tengo una pagina "pagina00.htm" con lo siguiente:

Código HTML:
<html>
<head>
<title>Pagina padre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<iframe id="prueba" name="prueba" src="pagina01.htm" frameborder="0" framespacing="0" scrolling="no" 
border="0" style="position:absolute; width:753px; height:482px; z-index:5; left: 161px; top: 34px;"></iframe> 
</body>
</html> 
y una hija "pagina01.htm":

Código HTML:
<html>
<head>
<title>Pagina hija</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script>

function comprueba()
{//falla esto (uy.. que observador soy ;-) jajaja)
 if (document.parent==null) 
 { alert("No hay pagina padre");}
 else 
 { alert("hay pagina padre");} 
}</script>
</head>
<body onLoad="comprueba();" >
</body>
</html> 

si en el navegador se escribe directamente pagina01.htm debe dar un error (redireccionar a otra pagina o lo que sea) pero si se entra a esa pagina desde pagina00.htm debe funcionar correctamente..
pero no me funciona..
a ver si teneis alguna idea..
__________________
ALOZORRO v5.0 (ahora en .es)
  #2 (permalink)  
Antiguo 05/07/2006, 04:52
Avatar de pinchoso  
Fecha de Ingreso: octubre-2005
Ubicación: Barcelona
Mensajes: 177
Antigüedad: 18 años, 6 meses
Puntos: 0
Hola Azrael666,

prueba a hacer lo siguiente, cambia la función comprueba de manera que lo que mira es que si existe el propio iframe, de esta manera sabrás si existe el padre:

Código:
function comprueba() {
 if (parent.prueba==null)  { alert("No hay pagina padre");}
 else  { alert("hay pagina padre");} 
}
A mi, de esta manera me va de maravilla!
Saludos
__________________

  #3 (permalink)  
Antiguo 05/07/2006, 04:57
Avatar de Azrael666  
Fecha de Ingreso: noviembre-2004
Mensajes: 652
Antigüedad: 19 años, 5 meses
Puntos: 1
bueno, despues de investigar ya lo solucione aunque no de la forma que me dices tu (que lo he probado tambien y funciona jeje, si no hubiese tirado de la otra habria usado esta forma jeje):

el problema con esa que pusiste tu es que si la llamo desde otra pagina que no sea pagina00.htm me da error asi que --> lo dejo de tal manera que pueda usarlo incluso si tengo que llamar a la pagina desde diferentes paginas padre:

<body onLoad="if (top.location.href==location.href) {window.location='error.htm';}" >

eso comprueba que la direccion actual y la padre son iguales, si lo son es que no está cargada desde la pagina padre.

venga.. gracias igualmente jeje
__________________
ALOZORRO v5.0 (ahora en .es)
  #4 (permalink)  
Antiguo 05/07/2006, 05:02
Avatar de pinchoso  
Fecha de Ingreso: octubre-2005
Ubicación: Barcelona
Mensajes: 177
Antigüedad: 18 años, 6 meses
Puntos: 0
de nada hombre...si lo interesante es contrastar posibilidades!

talueg!
__________________

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.