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. nignx - docker內nginx 80端口被占用2. python - flask _sqlalchemy 能否用中文作為索引條件3. 關于docker下的nginx壓力測試4. java - 阿里的開發手冊中為什么禁用map來作為查詢的接受類?5. 跟蹤器怎么開啟無反應6. macos - mac下docker如何設置代理7. dockerfile - 我用docker build的時候出現下邊問題 麻煩幫我看一下8. docker api 開發的端口怎么獲取?9. dockerfile - [docker build image失敗- npm install]10. android - 百度地圖加載完成監聽
