Ver Mensaje Individual
  #7 (permalink)  
Antiguo 29/04/2008, 08:09
Kikokeko
 
Fecha de Ingreso: abril-2008
Mensajes: 15
Antigüedad: 16 años
Puntos: 1
Re: Barra de scroll en iframes y más

Hola a todos. Bookmaster muchas gracias por tu ayuda. Me ha venido muy bien el código para que un Iframe se cargue con determinado vinculo. En lo referente al tamaño del Iframe he encontrado en varios sitios

1.- Declaramos una función javascript como la siguiente:
function resizeIframe(idIframe)
{
var miIframe=document.getElementById(idIframe);
var alturaPagina=miIframe.contentWindow.document.body. scrollHeight+20;
miIframe.style.height=alturaPagina;
}

2.- Al iframe le colocamos el atributo onLoad="resizeIframe(this.id)"

Este ejemplo solo funciona con vinculos que estén en el mismo dominio.

(http://www.livinbride.com/foro/showThread.php?id=1426#msg1426)

Yo incluso he visto algún ejemplo, pero no localizo la página para que la veais. Pero cada vez que lo intento me abre el vínculo en otra página, y eso que: target="iframe"


Tambien he encontrado esto en Ajax:

<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="True"></asp:ScriptManager><script type="text/javascript">var prm = Sys.WebForms.PageRequestManager.getInstance(); prm.add_endRequest(Redimensionar);onload = function Redimensionar(sender,art){top.window.document.getE lementById("demoFrame").height = document.getElementById("aspnetForm").offsetHeight ;top.window.document.getElementById("demoFrame").w idth = document.getElementById("aspnetForm").offsetWidth; }</script>
Tenemos que activar la propiedad EnablePageMethods="True" he instanciar la clase PageRequestManager para utilizarla.
var prm = Sys.WebForms.PageRequestManager.getInstance();
Asociamos el evento que nos interesa a una función javascript
prm.add_endRequest(Redimensionar);
Creamos el script que redimensionará el iFrame.
Para probar el código he creado un proyecto que utiliza una página con un iframe y un update panel.
<iframe frameborder="0" id="demoFrame" marginheight="0" marginwidth="0" scrolling="no" src="Pagina1.aspx"> </iframe> Al clicar el botón se aplica un bucle que aumenta el tamaño de la página.
Muy importante este ejemplo solo funciona con páginas dentro del mismo Dominio como muy bien lo explican en el primer link de Microsoft.

(http://geeks.ms/blogs/mrubino/archive/2007/08/22/iframe-redimensionable-con-ajax-net.aspx)

De momento no lo he intentado, tengo que leer un poquito más, pues no se si puedo implementarlo así por las buenas.

De todos modos bookmaster, muchas gracias :)