簡體   English   中英

每2秒iframe高度[動態]

[英]Iframe height [dynamic] for every 2 second

我的問題是,當我加載iframe時,它正確設置了iframe的高度;當數據(內容)加載到iframe中時,它會自動設置高度,但是在iframe中加載頁面時會自動設置高度,並相對於頁面內容設置高度,然后如果我減少或刪除內容從加載的頁面也不會降低iframe的高度。(例如,當頁面加載第一次高度設置100px和動態加載設置為在頁面iframe的高度數據150px ,當我減少數據它沒有設置iframe的高度,使其保持150px )。 這是我的代碼:

function setIframeHeight(iframe) {
    if (iframe) {
        var iframeWin = iframe.contentWindow || iframe.contentDocument.parentWindow;
        if (iframeWin.document.body) {
            iframe.height = iframeWin.document.documentElement.scrollHeight || iframeWin.document.body.scrollHeight;
        }
        setInterval("setIframeHeight_id('" + iframe.id + "')", 2000);
    }
    return false;
}

function setIframeHeight_id(iframeid) {
    var iframe = document.getElementById(iframeid);
    if (iframe) {
        var iframeWin = iframe.contentWindow || iframe.contentDocument.parentWindow;
        if (iframeWin.document.body) {
            iframe.height = iframeWin.document.documentElement.scrollHeight || iframeWin.document.body.scrollHeight;
        }
    }
    return false;
}

function resizeIframe(nm) {
    setIframeHeight(document.getElementById(nm));
}

HTML

 <iframe id="IframeData" scrolling="no" frameborder="0" width="100%" onload="resizeIframe('IframeData')" allowtransparency="true"></iframe>

我強烈建議您使用jQuery而不是普通的JavaScript。 它本身不會創造奇跡,但是一定會幫助您縮短代碼。

談到您的問題時,為什么不使用百分比大小而不是固定像素大小? 假設您的iframe高度設置為100% ,而不是150px 通過這種方式,下次您調整父容器的大小時,iframe本身將拉伸到父容器的高度。

我希望這有幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM