Foros del Web » Programando para Internet » Javascript »

Manipular Frames

Estas en el tema de Manipular Frames en el foro de Javascript en Foros del Web. Hola gente, como les va, me surgio un problema al intentar manipular frames, y es el siguiente: tengo un js que lo que intento hacer ...
  #1 (permalink)  
Antiguo 23/12/2007, 23:34
 
Fecha de Ingreso: diciembre-2007
Mensajes: 4
Antigüedad: 16 años, 4 meses
Puntos: 0
Manipular Frames

Hola gente, como les va, me surgio un problema al intentar manipular frames, y es el siguiente:

tengo un js que lo que intento hacer es un getelementsbytagname (en este caso, puede ser byname, by id) de window.frames[1], siendo este frame una pagina llamada <frame src="http://www.bajobelgrano.com" name="cuerpo">.

Lo que me sucede es que no puedo acceder a ninguna propiedad de .frames[1] a diferencia de .frames[2] siendo este frame <frame src="2.htm" name="indice"> que se aloja en mi rigido, el cual para probar, lo manipulo a la perfeccion.

Por lo que dice el Firebug: "uncaught exception: Permiso para obtener la propiedad HTMLDocument.getElementByTagName denegado" no es posible acceder a las propiedades de un documento de este tipo, es decir, una pagina web externa que se cargue en un frame.

Mi pregunta entonces es: hay alguna forma de dominar dom de un frame por js de una pagina tal como la que cargo en el <frame src="http://www.bajobel....... ?????

Es mi putapie inicial para lo que intento hacer, ya que lo que intento manipular es un from de una web, y lo acceso si o si por http://......

Les dejo los codigos, asi los ven,

1.htm:


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script language="JavaScript" type="text/javascript" src="1.js">
</script>
<frameset rows="100,*" border="0">
<frame src="2.htm" name="indice">
<frame src="http://www.bajobelgrano.com" name="cuerpo">
</frameset>
</frameset>
</head>
<body>
</body>
</html>

2.htm

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<body>
<div align="center">
<input name="url" id="boton" type="submit" value="enviar">
</form>

</body>
</html>

1.js:

window.onload = function(){

window.frames[0].document.bgColor = "blue"

var boton = $("boton");

boton.onclick=function(){
var a = $$("table");
alert (a)
};

//es aca donde a hacer clic no me deja hace nada, en cambio si pongo cualquier cosa del window.frames[0].document.... me deja tranquilamente....

}

function $(i) { return window.frames[0].document.getElementById(i); };
function $$(d) { return window.frames[1].document.getElementsByName(d); };


Saludos a todosssss
  #2 (permalink)  
Antiguo 24/12/2007, 03:37
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 1 mes
Puntos: 1284
Re: Manipular Frames

Hola:

Con window.frames[] y el índice adecuado debería estar bién, o con el DOM, desde la raíz del árbol de ventanas:
top.indice.document o top.indice.cuerpo
... pero para el contenido, debe tratarse del mismo dominio, sino siempre tendrás problemas con al acceso (denegado)

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 24/12/2007, 10:06
 
Fecha de Ingreso: diciembre-2007
Mensajes: 4
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: Manipular Frames

Gracias "caricatos" por la respuesta, me imaginaba que no podría acceder nunca

Un saludo... Felicidades (>.<)

Si sabes de alguna forma, o saben, de manipular el contenido cargado de una web externa sin que sea con frames, se los gradecería
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 19:46.