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鏡像push報錯2. angular.js - angular內容過長展開收起效果3. Docker for Mac 創建的dnsmasq容器連不上/不工作的問題4. javascript - URL中有#號如何來獲取參數??? nodejs5. docker容器呢SSH為什么連不通呢?6. docker不顯示端口映射呢?7. 關于docker下的nginx壓力測試8. 新手求教python3如何把dict循環寫入csv文件(在進行爬蟲時遇到的問題)?9. python - 想要看Exception實現的源碼在什么位置?10. python - Django表單Form.save()問題
