[英]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.