Red de conocimiento del abogados - Preguntas y respuestas sobre la Ley de patentes - Cómo hacer que la altura del IFrame sea adaptable

Cómo hacer que la altura del IFrame sea adaptable

¿Cómo necesita IFrame adaptar su altura?

Si podemos conocer la altura de la página cargada por el IFrame y luego establecer la altura del IFrame a la altura de la página cargada, entonces podemos lograr una altura adaptable.

¿Cómo saber la altura de la página cargada por el IFrame?

var clientHeight = $("#mainFrame").contents().find("body").height();

Utiliza jQuery para encontrar la altura del cuerpo en el IFrame, entonces clientHeight es lo que queremos.

¿Pero cuándo necesitamos encontrar el cuerpo en el IFrame? Por supuesto, debe hacerse cuando se carga el IFrame. Si el IFrame no se ha cargado, ¿cómo sacamos su cuerpo?

$("#mainFrame").load(function() {

var clientHeight = $("#mainFrame").contents().find("body").height();

$(this).height(clientHeight);

});

¿Es el mundo mucho mejor?

btw: 2009-12-16

Hoy la estructura en el IFrame se modificó a

float: left;

float: left;

$("#mainFrame").contents().find("body").height(); El valor extraído es 0

¿Por qué sucede esto? Debido a que se usa flotante, está separado de la estructura del documento. Puede moverlo a través de Firebug y puede ver que no hay ningún área seleccionada en el cuerpo.

Entonces, ¿qué debemos hacer?

Solo hay dos partes: principal y barra lateral derecha. Solo toma la parte superior.

var mainHeight = $("#mainFrame").contents().find("#main").height();

var rightHeight = $("#mainFrame" ).contents().find("#right-sidebar").height();

var clientHeight = Math.max(mainHeight, rightHeight);