angular.js - 在移動端web上如何解決輸入法擋住文本框問題?
問題描述
在移動端web頁面內定義了一個比較大的textarea大概能顯示15行字,點擊textarea的時候,輸入法彈出來會遮住textarea下端的幾行字,導致輸入的字數到10行之后,后面的輸入的字都被輸入法擋住了,變成了盲打,體驗很差。
請問使用js有什么方法可以解決這種問題?
剛剛寫了個比較笨的方法,發現只有三星的手機以及android5.0能兼容,什么小米,vivo之類的亂七八糟的機子都不認這個方法,醉了。。
<textarea onfocus='textfocus(this)' onblur='textblur(this)' rows='' cols=''></textarea><script type=’text/javascript’> function textfocus(o){ o.style.position = ’fixed’; o.style.top = ’50px’; o.style.zIndex = ’999’; } function textblur(o){ o.style.position = ’static’; o.style.top = ’auto’; } </script>
問題解答
回答1:1.當textarea接收到focus事件時,自動將文本框滾動到屏幕頂端2.設計的輸入框不要超過半個屏幕,如果一定要超過,textarea有change事件,計算輸入了多少個字,相應的再把輸入框向上滾動
這樣應該就能很友好了
回答2:使用fixed定位,bottom
相關文章:
1. docker - 如何修改運行中容器的配置2. javascript - Web微信聊天輸入框解決方案3. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?4. javascript - log4js的使用問題5. javascript - 移動端textarea不能上下滑動,該怎么解決?6. css - 對于類選擇器使用的問題7. javascript - 音頻加載問題8. javascript - 為什么這個點擊事件需要點擊兩次才有效果9. javascript - Ajax加載Json時,移動端頁面向左上角縮小一截兒,加載完成后才正常顯示,這該如何解決?10. javascript - 有沒有什么好的圖片懶加載的插件,需要包含監聽頁面滾動高度,然后再加載的功能
