2013-09-22 54 views
12

我有一個全屏幕(保存到主屏幕)上的麻煩iOS7 iPhone的Web應用程序打破。WebKit的溢出滾動形式在iOS 7全屏的Web應用程序

典型地,當選擇了輸入,它已經滾動到視圖鍵盤上方。

然而,這似乎並沒有對iOS7發生在全屏的Web應用程序滾動的DIV。因此,當DIV使用「-webkit-overflow-scrolling:touch」並點擊屏幕下半部分的輸入時,鍵盤被觸發,但輸入不會向上滾動。

,並在那個時候,投入將不,我可以以其他方式滾動起來的任何進一步的onfocus事件。

任何人都看到了解決方法嗎?

回答

17

更新視口元標記爲我解決了它。

我改變了這個:

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no" /> 

要這樣:

<meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1.0, target-densityDpi=device-dpi" /> 

height=device-height是實際修復(如果沒有它,視口被調整大小以適應鍵盤)。

+1

太棒了! 設置高度裝置高度是打破在我們的應用一些其他的事情(我們是在使用設備高度的鍵盤上方移動了固定頁腳欄,因爲iOS7縮小設備的高度時,鍵盤顯示)。 但是。 。 。將其明確設置爲非常大的內容,例如10000像素使其大部分可以工作,除了大量額外的空白外。 (然而,額外的空格當然是惡意的較小者。) –

+2

target-densityDpi = device-dpi已棄用,您可以輕鬆刪除它。 https://petelepage.com/blog/2013/02/viewport-target-densitydpi-support-is-being-deprecated/ –

+0

這適用於我,但後來我得到這個問題:http://stackoverflow.com/questions/11804428/jQuery的移動高度問題換iphone-web應用程序 - 假設 - 頁面高度的-480-instea –

0

它的工作對我的Web應用程序通過刪除高度設置。

相關問題