获取 jQuery 标签内的 iframe 高度 returns 0
getting iframe height inside jQuery tabs returns 0
我在 jQuery 选项卡中有多个 iframe,但它们不在活动选项卡中。每个选项卡都包含一个 iframe。我正在尝试获取 iframe 内容的高度以扩展 iframe 高度。问题是如果 iframe 位于选项卡内,函数会发出 0 警报,但如果 iframe 直接位于页面正文中,则可以正常工作。这是 iframe 代码
<div id="discussion">
<iframe src="page path here" id="myFrame" style="width: 90%;
float: right;border: 0;" onload="calcHeight()"></iframe>
</div>
和函数
function calcHeight(){
var the_height=document.getElementById('myFrame')
.contentWindow.document.body.scrollHeight;
document.getElementById('myFrame').height=the_height;
$("#myFrame").css("height",the_height);
alert(the_height);
}
加载选项卡后,您可以使用 jQueryUI 的回调获取 iframe 高度:
$( ".selector" ).tabs({
activate: function( event, ui ) {
calcHeight();
}
});
我在 jQuery 选项卡中有多个 iframe,但它们不在活动选项卡中。每个选项卡都包含一个 iframe。我正在尝试获取 iframe 内容的高度以扩展 iframe 高度。问题是如果 iframe 位于选项卡内,函数会发出 0 警报,但如果 iframe 直接位于页面正文中,则可以正常工作。这是 iframe 代码
<div id="discussion">
<iframe src="page path here" id="myFrame" style="width: 90%;
float: right;border: 0;" onload="calcHeight()"></iframe>
</div>
和函数
function calcHeight(){
var the_height=document.getElementById('myFrame')
.contentWindow.document.body.scrollHeight;
document.getElementById('myFrame').height=the_height;
$("#myFrame").css("height",the_height);
alert(the_height);
}
加载选项卡后,您可以使用 jQueryUI 的回调获取 iframe 高度:
$( ".selector" ).tabs({
activate: function( event, ui ) {
calcHeight();
}
});