Hola gente!
Aunque esta duda .. ya ha sido "contestada" .. por muchas personas la realizo nuevamente. por que a mi no me funciona ninguna de las soluciones .. que he encontrado, desde las mas sencillas hasta las mas complejas y todas .. me dan la pega en el mismo punto.. No se ajustan al Height de la pagina que carga, siempre se queda en la dimensión de la anterior.
Esto es lo que he encontrado:
<script type="text/javascript" language="JavaScript">
//Ajusta el tamaño de un iframe al de su contenido interior para evitar scroll
function autofitIframe(id){
if (!window.opera && document.all && document.getElementById){
id.style.height=id.contentWindow.document.body.scr ollHeight
} else if(document.getElementById) {
id.style.height=id.contentDocument.body.scrollHeig ht+ 800+"px";
}
}
</script>
-----------------------------------------------------------------------------------------------
<script type="text/javascript">
function getWindowData(n,i){
var ifr=document.getElementById(i).contentWindow.docum ent || document.getElementById(i).contentDocument;
var widthViewport,heightViewport,xScroll,yScroll,width Total,heightTotal;
if (typeof window.frames[n].innerWidth != 'undefined'){
widthViewport= window.frames[n].innerWidth;
heightViewport= window.frames[n].innerHeight;
}else if(typeof ifr.documentElement != 'undefined' && typeof ifr.documentElement.clientWidth !='undefined' && ifr.documentElement.clientWidth != 0){
widthViewport=ifr.documentElement.clientWidth;
heightViewport=ifr.documentElement.clientHeight;
}else{
widthViewport= ifr.getElementsByTagName('body')[0].clientWidth;
heightViewport=ifr.getElementsByTagName('body')[0].clientHeight;
}
xScroll=window.frames[n].pageXOffset || (ifr.documentElement.scrollLeft+ifr.body.scrollLef t);
yScroll=window.frames[n].pageYOffset || (ifr.documentElement.scrollTop+ifr.body.scrollTop) ;
widthTotal=Math.max(ifr.documentElement.scrollWidt h,ifr.body.scrollWidth,widthViewport);
heightTotal=Math.max(ifr.documentElement.scrollHei ght,ifr.body.scrollHeight,heightViewport);
return [widthViewport,heightViewport,xScroll,yScroll,width Total,heightTotal];
}
function resizeIframe(ID,NOMBRE){
document.getElementById(ID).height=null;
document.getElementById(ID).width=null;
window.location='#';//necesario para safari
var m=getWindowData(NOMBRE,ID);
document.getElementById(ID).height=m[5]+50;
document.getElementById(ID).width=m[4]+100;
}
function addEvent(obj, evType, fn, useCapture){
if (obj.addEventListener){
obj.addEventListener(evType, fn, useCapture);
} else if (obj.attachEvent){
obj.attachEvent("on"+evType, fn);
} else {
obj['on'+evType]=fn;
}
}
window.onload=function(){
resizeIframe('miIframe','miIframe');
addEvent(document.getElementById('miIframe'), 'click', function(){resizeIframe('miIframe','miIframe');}, false);
}
</script>
----------------------------------------------------------------------------------------
function resizeIframe( idIframe ) {
var miIframe = document.getElementById( idIframe );
if( miIframe.contentDocument ) { // firefox
alturaPagina = miIframe.contentDocument.height;
}
else { // IE y demás
alturaPagina = miIframe.contentWindow.document.body.scrollHeight;
}
miIframe.style.height = alturaPagina + 100 + "px";
}
--------------------------------------------------------------------------------------------
y todos .. por ese hilo... y que yo veo bien ... se cargan en el onload de la web donde esta el iframe.... en el click..... sin embargo no se por que no me redimensionan...
Alguien me podría ayudar ??????? u ofrecerme una solución mejor....
de antemano muchas gracias!!!
Saludos!