Foros del Web » Programando para Internet » Javascript »

saber las paginas en las que navega un iframe

Estas en el tema de saber las paginas en las que navega un iframe en el foro de Javascript en Foros del Web. Hola Amigos. Tengo el siguiente problema: He implementado un iframe para que cargue ciertas paginas para ayudar a unos amigos. Las personas pueden navegar atravez ...
  #1 (permalink)  
Antiguo 31/03/2009, 12:22
eira2meigas
Invitado
 
Mensajes: n/a
Puntos:
saber las paginas en las que navega un iframe

Hola Amigos.

Tengo el siguiente problema:
He implementado un iframe para que cargue ciertas paginas para ayudar a unos amigos. Las personas pueden navegar atravez de las paginas que contienen los iframes. El problema que tengo es que necesito saber, por medio de javascript, cuando un usuario hace clic en un enlace dentro del iframe, y saber la direcion de la pagina a la que ese link lleva.

Espero averme echo entender y que me puedan ayudar.
De antemano gracias.
  #2 (permalink)  
Antiguo 31/03/2009, 12:26
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: saber las paginas en las que navega un iframe

Si la página que está cargada en el iframe no pertenece al mismo dominio que la tuya, no se puede obtener esa información que deseas por motivos de seguridad.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 31/03/2009, 12:27
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Respuesta: saber las paginas en las que navega un iframe

Si las páginas pertenecen a tu dominio, no hay problema, si no, necesitarás lenguaje de servidor (para generar un un proxy) para poder acceder a esa información.
  #4 (permalink)  
Antiguo 31/03/2009, 15:00
eira2meigas
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: saber las paginas en las que navega un iframe

Gracias por contestar.

Las paginas no pertenecen a mi dominio, y de verdad necesito saber esa direccion en la que esta navegando el usuario en iframe.

Puedes profundizar en tu solucion...
Gracias de antemano
  #5 (permalink)  
Antiguo 31/03/2009, 18:56
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Respuesta: saber las paginas en las que navega un iframe

Mirate este enlace: http://www.forosdelweb.com/2510657-post11.html
Y acá hay otro buen ejemplo: http://www.forosdelweb.com/f13/ayuda...iframe-589813/

Última edición por Panino5001; 31/03/2009 a las 19:07
  #6 (permalink)  
Antiguo 31/03/2009, 20:43
eira2meigas
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: saber las paginas en las que navega un iframe

Gracias Panino5001 de verdad me has ayudado bastante.
Y permiteme molestarte con una ultima pregunta:
cuando yo pregunto en javascript por el src del iframe este me devuelve siempre la misma direccion independientemente cuanto haya navegado en la pagina del iframe. Y yo necesito saber cual es la direccion la pagina que esta cargada en el iframe y que cada vez que el usuario de click en un enlace se actualise un textbox con la direccion actual de la pagina que esta contenida en el iframe.

Espero que me puedas entender.
Gracias por tu ayuda.
  #7 (permalink)  
Antiguo 31/03/2009, 21:32
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Respuesta: saber las paginas en las que navega un iframe

Esta es una aproximación usando el ejemplo del primer enlace. Tendrás que trabajarla un poco:
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<
title>ejemplo</title>
<
script>
function $(
id){
    return 
document.getElementById(id);    
}
var 
asignar=setInterval(function(){
    if($(
'p')){
        if(
window.ActiveXObject){
            $(
'p').onreadystatechange=function(){
                if($(
'p').readyState=='complete'){
                       
taguear();
                }
            }
            
clearInterval(asignar);
            return;
        }
        $(
'p').onload=function(){
            
taguear();
        }
        
clearInterval(asignar);
    }
},
10);
function 
taguear(){
    
document.getElementById('p').style.visibility='visible';
    var 
docIframe=document.getElementById('p').contentWindow.document || document.getElementById('p').contentDocument;
    var 
enlaces=docIframe.getElementsByTagName('a');
    for(var 
i=0;enlaces[i];i++){
        (function(
enlace){
            
enlace.onclick=function(){
                
enlace.target="_self";
                
parent.document.getElementById('log').innerHTML=enlace.href;
                
document.getElementById('p').src='proxy.php?url='+escape(enlace.href);
                
enlace.href='#';
                return 
false;
            }
        })(
enlaces[i]);
    }
}
</script>
</head>

<body>
<iframe style="visibility:hidden" id="p" width="500" height="500" src="proxy.php?url=http://www.forosdelweb.com"></iframe>
<div id="log"></div>
</body>
</html> 
Y proxy.php:
Código PHP:
<base href="<?php $d=parse_url($_GET['url'],PHP_URL_HOST); echo $d ?>" />
<?php 
echo file_get_contents($_GET['url']);
?>

Última edición por Panino5001; 31/03/2009 a las 22:33 Razón: Mejora Explorer
  #8 (permalink)  
Antiguo 31/03/2009, 22:30
eira2meigas
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: saber las paginas en las que navega un iframe

Gracias Panino5001.

Es exactamente lo que necesitaba....muchas gracias de verdad.

Ahora si manos a la obra.
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 03:19.