在 iFrame 中嵌入 aspx 頁面時,iFrame 的高度可能無法充分容納其內容,從而導致出現不良滾動條。為了解決這個問題,讓我們來探索一個跨瀏覽器的解決方案。
提供的 jQuery 方法在 Chrome 中成功調整了 iFrame 的高度,但在 Firefox 中遇到了問題。這種差異是由於不同瀏覽器處理跨站腳本 (XSS) 限制的方式不同所造成的。
為了確定 iFrame 內容的高度,我們利用 contentWindow.document。 body.scrollHeight。 iFrame 載入後,我們使用以下JavaScript 動態調整其大小:
function iframeLoaded() { var iFrameID = document.getElementById('idIframe'); if(iFrameID) { iFrameID.height = ""; iFrameID.height = iFrameID.contentWindow.document.body.scrollHeight + "px"; } }
將此JavaScript 合併到嵌入iFrame 的頁面中,並將事件處理程序連接到iFrame 標籤的onLoad 屬性:
<iframe>
在iFrame內的內容更新需要手動觸發縮放器的情況下,您可以從iFrame 的內容腳本調用iframeLoaded():
parent.iframeLoaded();
這個全面的解決方案提供了跨瀏覽器兼容根據內容動態調整iFrame高度,消除不需要的滾動條。
以上是如何動態調整 iFrame 的高度以適應跨瀏覽器的內容?的詳細內容。更多資訊請關注PHP中文網其他相關文章!