2011-04-03 63 views
11

我想在頁面加載時專注於PhoneGap應用程序中的文本輸入。當DOM準備就緒時,我嘗試了MooTools版本$('entry').focus();document.getElementById('entry').focus()如何在電話頁面加載時專注於輸入字段?

在正常的網頁瀏覽器中查看HTML頁面時,此功能正常,但在運行PhoneGap的iPhone模擬器中無效。

有沒有辦法專注於強制顯示虛擬鍵盤的iPhone表單字段?

回答

6

據我所知,這是iPhone和Android上WebKit的故意限制;只有用戶觸摸動作才能觸發鍵盤。我仍在試圖制定一個解決方法,但我並不樂觀。

+2

您是否設法找到解決方法?仍然似乎不是一個解決方案。 – James 2012-10-01 11:32:52

+0

@James:從未找到解決方法。但是,該政策在iOS6上逆轉了主屏幕Web應用程序和正確配置的UIWebViews。這是一個很好的折衷方案,也許是我們所希望的最好的。 – 2012-10-03 00:11:04

+1

我設法通過編寫自定義的PhoneGap插件來完成它的工作,並用本機'UITextView'完全替換HTML輸入 - 不理想,但它確實有效。 – James 2012-10-03 15:05:37

22

從iOS 6開始,UIWebView類具有一個名爲「keyboardDisplayRequiresUserAction」的屬性。如果要以編程方式聚焦文本表單元素,請通過phonegap config.xml將其設置爲false:

<preference name="KeyboardDisplayRequiresUserAction" value="false" /> 

默認值爲true。

更多這裏:http://community.phonegap.com/nitobi/topics/calling_focus

+0

您的答案應該在最上面,謝謝!工作很好。 – 2014-04-16 19:23:51

相關問題