欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

vue iframe 高度

張吉惟2年前9瀏覽0評論

在使用Vue框架進行開發過程中,我們常常需要用iframe嵌套外部頁面。但是嵌套的頁面高度可能會超出iframe的高度,造成頁面顯示不全的問題。

解決方法一般是通過在頁面加載完成后,獲取iframe內部頁面的高度,然后根據高度設置iframe的高度。代碼如下:

mounted() {
const iframe = document.getElementById('myIframe')
iframe.addEventListener("load", () =>{
iframe.height = iframe.contentWindow.document.body.scrollHeight + 'px'
})
}

其中,mounted是Vue的生命周期函數,表示組件掛載完成后觸發。iframe可以通過id屬性或者ref屬性獲取,在這里我們用了id。addEventListener是為了在頁面加載完成后執行獲取高度的操作。獲取高度的代碼是通過訪問iframe的contentWindow屬性獲取到里面的頁面,然后訪問document.body.scrollHeight屬性獲取到頁面的高度,最后再將該高度賦值給iframe的height屬性即可。

需要注意的是,由于需要等待iframe內部頁面加載完成才能獲取到高度,因此獲取高度的代碼需要放在load事件中,而不是放在mounted函數中。否則無法獲取正確的高度。

除此之外,還有一些特殊情況需要注意,例如iframe內部頁面有動態高度(如圖片加載、文本輸入等),則需要使用MutationObserver監聽內部頁面的變化,隨時更新iframe的高度。另外,由于跨域問題,需要確保嵌套的外部頁面和當前頁面在同一域名下,否則無法獲取內部頁面的高度。