1. 程式人生 > >解決ios部分手機鍵盤彈起導致input無法聚焦的bug

解決ios部分手機鍵盤彈起導致input無法聚焦的bug

環境:微信瀏覽器

場景:我們的登入頁面,兩個輸入框,點選獲取驗證碼,彈出一個彈層,彈層採用fixed佈局,彈層元素是輸入框來輸入驗證碼的

問題:點選彈層input獲取焦點後,鍵盤自動彈起,把頁面頂起來了,當點選彈層中處input外區域,鍵盤自動收起,彈層輸入框恢復原位,但是無法聚焦,形成一個bug

測試:測試過程中發現鍵盤收起後的輸入框無法聚焦,但是在之前被鍵盤頂起來的位置點選居然有效,鍵盤再次彈起,故猜測時webview的內部scrollview自己實現的鍵盤彈起上滾頁面,但是鍵盤收起時頁面沒有回滾,只是因為定位的關係頁面雖然還原,但是scrollview沒動,導致點選元素還停留在鍵盤彈起的地方

解決:監聽input的blur事件,執行window.scroll(0,0)讓頁面還原到初始位置