2012-11-01 28 views
3

我正在研究HTML5移動應用程序(使用常規jQuery,而不是移動設備),該應用程序實現了顯示在textarea下的自定義自動完成列表。用戶從列表中選擇一個選項,該單詞被自動完成,並且用戶繼續像往常一樣打字。Android JQuery焦點()解決方法

問題是,用戶點擊文本框以選擇自動完成項目,所以textarea瞬間失去焦點。由於focus()在android瀏覽器中被禁用,所以我不能像通常那樣立即重新聚焦並保留脫字符的最後位置。

是否有一種解決方法,可以讓我重新關注textarea,並將常規blur()和focus()調用保留在插入位置?

編輯: 基本假設來源:這裏提到:https://stackoverflow.com/a/10243010/832607這裏: http://ambrusmartin.wordpress.com/2012/08/30/soft-keyboards-in-android-iphone-phonegap-applications-when-we-call-focus/(已經嘗試過的解決方案中的鏈接提到)

回答

1

不是重新聚焦textarea的我建議你試圖不輸重點放在首位。在防止對mousedown執行默認操作時,我正在實現此目的。

這裏是jQuery的,假設list是你的選項列表和所有選項都有listEl類:

list.on('mousedown', '.listEl', function(e) { 
    e.preventDefault(); 
}); 
+0

感謝帕特里克!我還沒有完全得到它的工作,但這是迄今爲止工作,讓我更加接近。 –

+0

如果您更詳細地描述未解決的問題,我們可能會縮小範圍。 –