2012-01-18 115 views
15

我正在開發iPad html5網頁,需要顯示來自其他來源(不同域)的網頁。iframe內容不滾動在iOs5 iPad/iPhone

我將這些頁面加載到iframe中,並使用iOs5新滾動功能滾動iframe,如下面的代碼所示。

<div id="myDiv" style="height: 1185px; width: 100%; overflow:scroll; -webkit-overflow-scrolling: touch;"> 
    <iframe id="myIframe" src="http://http://css-tricks.com/forums/discussion/11946/scrolling-iframe-on-ipad/p1"></iframe> 
</div> 

問題是,當滾動到屏幕上時,屏幕外iframe內容不可見(幀爲空白)。

如何解決此問題並提供可滾動iframe解決方案?

+0

解決了,我稍後會回答.. – roee 2012-01-18 16:15:40

+1

目前爲止的答案? – BreakPhreak 2012-01-19 08:20:48

回答

11

好的。找到了解決方案。顯然,當主文檔高度比滾動的iframe更短時,會出現問題。 iframe頁面的超過文檔高度的部分不會呈現。

所以,在我的需要,我可以通過添加這樣的JS(使用jQuery)代碼解決這個問題:

<script> 
$(function() { 
    var iframe = $("#myIframe");  
    iframe.load(function() { 
     $("body").height(iframe.height()); 
    }); 
}); 
</script> 
+0

任何人都知道如何用ExtJS或本地JS來處理這個問題,因爲我沒有jQuery可用? – YvesR 2012-05-14 11:37:38

3

如果你有身體的iFrame的訪問,應用一些的Transform3D其內容。 在我的情況下,添加-webkit-transform: translate3d(0, 0, 0);到主包裝div做了這項工作。

+0

這對我有用。就我而言,我必須在CSS中設置了'height:100%'的框架上設置此樣式。 – 2016-05-18 08:25:18