2010-12-09 35 views
4

我有一個客戶希望他們的UI在表單中顯示字段名稱(用戶名字段顯示「用戶名」,密碼字段顯示「密碼」等)。由於表單使用的密碼類型爲<input>(通常顯示爲圓點),所以我不得不通過將數據覆蓋在包含字面的div上來填充數據。網頁中的Chrome自動填充何時呈現?

爲了識別自動填充,我寫了一些Javascript來檢查字段是否被填充並相應地執行(隱藏或顯示字面值)。

據我所知,Chrome是唯一一個不可靠的瀏覽器。它似乎並不關心是否有自動填充數據,而且該字母總是覆蓋自動填充數據(表面上是因爲hide功能未被觸發)。

我長期以來的問題是Chrome在呈現過程中自動填充數據的時間?它是否等到Javascript完成了?有什麼方法可以檢查自動填充數據是否佔用Chrome中的某個字段?

+0

如果你在你的verbiage隱藏函數中放置了一個很長的`setTimeout`,它會在Chrome上正確處理嗎?也就是說,嘗試從等式中刪除文檔加載順序,以確定這是否真的是丟掉鉻。 – jball 2010-12-09 04:08:46

回答

1

我決定給聽衆附加到激活包含表單的模態的事件。毋庸置疑,這是一種只適用於我特殊情況的解決方案。我不認爲這是一個答案,但我在這裏發佈它可能會讓其他人尋找解決方案的解決方法。

4

一個簡單的解決方法是使用WebKit和Firefox支持的HTML5的placeholder屬性。這需要額外的功能檢測,但是你只需要在非Chrome中實現模擬覆蓋。

Dive Into HTML5 explanation

+0

雖然沒有得到廣泛的支持,但這個功能是我在HTML5 – dclowd9901 2010-12-09 05:49:23