2010-10-04 79 views
6

顯示鍵盤舉例來說,如果我有有沒有一種方法,以避免在移動Safari

<input type="text" id="myid"> 

,我使用iPad,我在此輸入焦點,在iPad會自動顯示鍵盤。有沒有辦法避免這種情況? 謝謝

+1

如果鍵盤未顯示,用戶如何將數據輸入該字段? – 2010-10-04 20:07:20

+1

重點關注輸入字段時會顯示一張表格,以便人們可以選擇一個項目。一個簡單的選擇標籤不會這樣做,因爲每個選項都會有多個數據項。 – 2010-10-04 20:20:12

回答

2

不要讓焦點轉到那個領域。使用事件處理程序來防止默認行爲。 事件處理會是這個樣子:

function onFocus(e) { 
    e.preventDefault(); 
    // you could change the color of the field to indicate this is the active field. 
} 

你的表處理代碼可能會填充此字段沒有瀏覽器不斷關注它。

3

我發現的最佳解決方案是在textarea上放置一個隱形div。這可以防止textarea接收觸摸事件,並防止鍵盤出現。在div上捕獲事件,並且如果您想對其執行textarea可編輯調用.focus(),那麼會彈出鍵盤。

使用event.preventDefault不能很好地工作。它會導致屏幕在鍵盤出現時「跳躍」,然後立即消失。

11

是的,只是讓元素只讀

<input type="text" id="myid" readonly="readonly" /> 

請注意,這不符合的單元工作。我相信這可能是一個錯誤。

相關問題