2012-10-29 25 views
0

我想在頁面加載時立即關注文本輸入域。但是下面的代碼,即在桌面瀏覽器上運行,不工作在移動Safari瀏覽器(在iOS 6):移動Safari自動對焦文本輸入

<input type="text" name="q" class="search" id="focusme" /> 

    ... 

    <script type="text/javascript"> 
    window.onload=function(){var a=document.getElementById("focusme");a.focus();} 
    </script> 


我試圖完成這個幾個建議的修復。但是,我一直無法得到它的工作。它確實在焦點顯示了字段的CSS變化,但鍵盤沒有顯示出來。

我懷疑這可能是由於我目前對JavaScript的理解非常有限,但我認爲它可能仍然是Safari中的一個錯誤。


問題:

在Safari上的iOS 6,你知道有什麼方法可以自動對焦的頁面加載一個文本輸入字段?


謝謝您的幫助:-)


更新:

頁面確實有jQuery和移動的jQuery可用,如果他們需要使用。

+0

這是一個嘗試的小提琴:http://jsfiddle.net/pXvAD/ – insertusernamehere

回答

0

爲什麼要使用JavaScript? <input type="text" autofocus />應該這樣做!

+1

不幸的是,這並沒有工作。如果CSS具有相同的行爲顯示輸入框爲選中狀態,但鍵盤實際上不起作用。 –

+1

好了,終於找到了一些有關這方面的信息:「根據設計,Mobile Safari中的一些focus()事件會被忽略。很多網站會不必要地做focus(),並且提起鍵盤很慢/干擾。請參閱:http://www.quora.com/Mobile-Safari-iPhone-or-iPad-with-JavaScript-how-can-I-launch-the-on-screen-keyboard並在這裏:http:// wufoo。 com/html5/attributes/02-autofocus.html – gregory

+0

很酷,謝謝你的鏈接。在我使用它的實例中,我個人認爲它確實提高了可用性 - 用戶將點擊一個按鈕進行搜索,然後使用搜索欄(即輸入欄)在新頁面上進行搜索 - 因此它們將始終想要點擊搜索欄(理論上)。 –