2012-03-28 60 views
9

我開發了一個手機應用程序。 在輸入標籤,如果我給類型='文本'它是行之有效的。 但當我給輸入類型='密碼'另一個字段是打開到當前字段。Phonegap輸入類型密碼字段焦點

如何刪除上述領域..

我的CSS是

.login-screen input.login {-webkit-border-radius:4px; width:90%; border:none; height:33px; -webkit-box-shadow: inset 0px 1px 2px 0px rgba(150, 150, 150, 0.9); 
-moz-box-shadow: inset 0px 1px 2px 0px rgba(150, 150, 150, 0.9); box-shadow: inset 0px 1px 2px 0px rgba(150, 150, 150, 0.9); padding-left:10px; margin-bottom:10px;} 

HTML

<td align="center"><input type="text" id="vEmail" name="vEmail" title="Enter Email" value="" alt="" class="login" /></td> 
     </tr> 
     <tr> 
     <td align="center" ><input type="password" id="vPassword" name="vPassword" title="Enter Password" value="" alt="" class="login"/></td> 
     </tr> 

我希望你可以看到這個圖片瞭解更多!

In screen other field is overlaying in password field

如果我刪除了我的滾動工作正常...我怎樣才能讓我即使滾動使用

+1

嘗試刪除佔位符和測試 – ghostCoder 2012-03-28 11:58:42

+0

而你需要總是提供一些代碼,以便我們可以看看它:) – 2012-03-28 12:05:40

+0

@ghostCoder佔位沒有給出.. – Sandy09 2012-03-28 12:46:21

回答

7

我已經能夠避免這種使用機器人:windowSoftInputMode =「adjustNothing」。 + Sandy09是關於覆蓋+位置的。似乎避免這種情況的唯一好方法是防止android在IME start(adjustNothing)上移動內容,並防止webview內的內容完全移動。這似乎也打破了所有的CSS3 3d/3d轉換,即使是簡單的縮放比例和轉換原點也會打破它。

還有更糟糕的消息:在某些時候,我的密碼框工作正常,然後由於CSS更改它永久回來。在某些情況下,如果瀏覽器足夠慢(畫布),Window似乎失去了跟蹤輸入框的能力。對我們來說,每當我們按下IME上的7(7)鍵時,就會產生SIGSEGV。這也是在所有的Android設備上,無論版本。

我放棄了所有這一切,只是做了我自己的KeyboardView。我現在有點快樂了。

+0

iScroll可能會打破它,因爲它在內容打開後會移動一些東西。我有幾個佈局插件嚇壞了,並將我的輸入框移到真實的下方。 – 2012-04-10 21:27:42

+0

感謝你@Colin的更多信息..可以ü請建議如何準備插件的..有可能準備「一個插件,使滾動到底部領域覆蓋框」 – Sandy09 2012-04-11 10:39:25

+0

爲了讓我得到它需要工作,我必須製作一個自定義鍵盤,在webview上使用addJavaScriptInterface(主要是通過Phonegap),以便讓JS直接與Java交談,處理輸入框中的所有觸摸事件,然後我可以最終滾動頁面到輸入沒有任何奇怪的視覺文物。一個真正的痛苦= \ – 2012-04-11 13:22:33

1

看看這個搗鼓登錄它的工作/註冊頁面...作爲小提琴給出這樣的。 使用密碼字段

http://jsfiddle.net/elijahmanor/3Rmdm/1/

+0

這仍然有同樣的問題,因爲上面= \(AT&T Atrix 2) – 2012-04-10 21:25:22

+0

不錯的工具.. @Coder_sLay – YuDroid 2012-09-13 13:27:22

1

這是不是與PhoneGap的..這個問題也發生在web視圖..問題在像(三星,索尼和模擬器等)的許多設備的密碼字段覆蓋與另一個字段和其餘領域工作正常。 來到宏達這個問題將在所有類型的領域上升..

通常這個覆蓋領域覆蓋確切的底部領域,看起來像只有一個領域。 但是 當我們使用iscroll來應用滾動屬性時,ovelay錯位,如上圖所示。

解決方案: onfocus on the field disable iscroll and onblur refreshing iscroll is a temporal solution that works fine。

但這不是所有情況下的解決方案。

等待,並試圖爲更好的解決方案..

14

這是一個更簡單的解決方案!

變化 <input type="password" />

<input type="text" class="password-field" /> 

在你的CSS樣式表(一個或多個)。

input.password-field { 
    -webkit-text-security: disc; 
} 

http://css-infos.net/property/-webkit-text-security

我建立一個PhoneGap的(科爾多瓦)的Android應用程序,我花了約18小時,到目前爲止試圖找到一個解決方法,破壞iScroll實例樣的作品,如果密碼字段上屏幕,而不是滾動區域下面... webkit文本安全CSS屬性是一個更好的解決方案,我已經做了一些關於這個CSS屬性的研究,它似乎像所有的Android版本運行webkit,所以你應該很好去所有版本的Android與此修復程序!

+0

這對我來說很好...謝謝@Jason – 2013-04-02 14:47:57

+0

它對密碼箱很好用,但使用它沒有意義,因爲您可以在拼寫建議器中閱讀它。有沒有辦法來禁用這個(不是在Android設置,但在頁面上)? – DavidVdd 2013-07-03 07:56:33