簡體   English   中英

根據內容不一致的高度計算調整iFrame的大小

[英]Resizing iFrame based on content inconsistent height calculation

我已經實現了上一篇文章中介紹的解決方案,該解決方案基於內容調整iframe的大小,效果很好,但效果不盡人意。

我得到的問題是,有時它會正確地計算高度,有時會計算得太短而內容被切掉。

我正在尋找有關可能導致此問題的建議,因為其他所有人似乎都成功了。 在我看來,如果高度計算不正確,則可能是在將所有數據從外部源加載到iFrame之前進行了計算。 但這只是一個猜測,我絕不是JS專家。

我可以做些什么來確保在外部頁面完成加載后完成計算嗎?

正確計算高度幾乎是不可能的。 我玩了很長時間。 我經歷過的一件事是,如果您在iframe中有一個表單,並且表單中存在一些錯誤處理事件。 可以說表單中有一個帶有隱藏行等的表格。然后,當錯誤出現時,隨着行開始出現,表格變得“更高”,因此高度范圍現在又不同了。 只要在iframe內部完成回發,就無法控制高度。 我已經嘗試過發布的每個解決方案,但無法正確計算。 我必須估計“最高”高度,並將其硬編碼為該高度。

我希望問題在於您需要檢測iFrame中的內容何時更改,然后再次調整iFrame的大小。 在現代瀏覽器中,您可以使用mutationObserver來執行此操作,但是它在向下的IE10中不起作用,因此您必須使用故障回復來解決此問題。

我編寫了一個小型庫,負責處理所有這些問題,並將使iFrame保持適合其內容的大小。 在現代瀏覽器和IE8及更高版本中均可使用。

https://github.com/davidjbradshaw/iframe-resizer

暫無
暫無

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

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