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 for Mac 創建的dnsmasq容器連不上/不工作的問題2. docker - 如何修改運行中容器的配置3. docker安裝后出現Cannot connect to the Docker daemon.4. nignx - docker內nginx 80端口被占用5. python3.x - python連oanda的模擬交易api獲取json問題第五問6. javascript - QWebEngineView 如何爬 angular 的動態數據?7. css3 - 沒明白盒子的height隨width的變化這段css是怎樣實現的?8. javascript - webpack熱加載配置不生效9. java - SSH框架中寫分頁時service層中不能注入分頁類10. java - instance method中 static后的<K>是什么意思?
