根据内容设置iFrame宽度和高度

时间:2013-11-10 05:50:04

标签: javascript jquery iframe height width

目前我有一个jquery iframe模式对话框,它打开一个ASPX页面。该页面包含另一个带有jQuery的iFrame。内容iframe没有设置任何高度或宽度,因此根据内部内容的大小进行大小调整。外部jQuery iframe模式根据其中的内容iframe不会调整大小。 以下是打开模态的代码:

function openModal() {

    var horizontalPadding = 30;
    var verticalPadding = 30;
    var jqurl = "ContentPage.aspx";
    var title = "Modal Title";
    jQuery('<iframe scrolling="no" id="cLaunch" class="cLaunch" src="' + jqurl + '" frameborder="0"/>').dialog({
        title: title,
        modal: true,
        resizable: true,
        position: ['center', 50],

        fluid:true,
        overlay: {
            opacity: 0.5,
            background: "grey"
        }

    });
}

setInterval(function () {
    document.getElementById("cLaunch").style.width = document.getElementById("cLaunch").contentWindow.document.documentElement.scrollWidth + 30 +  'px';
    document.getElementById("cLaunch").style.height = document.getElementById("cLaunch").contentWindow.document.body.scrollHeight + 'px';


}, 1000)

ConentPage.aspx:

<iframe name="contentloader"  id="contentloader"  frameborder="0" scrolling="no"></iframe>

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

尝试根据iframe

中加载的内容设置iframe的宽度和高度
$("#cLaunch").load(function() {
    $(this).height( $(this).contents().find("body").height());
    $(this).width( $(this).contents().find("body").width());
});