搜尋

首頁  >  問答  >  主體

angular.js - 在行動端web上如何解決輸入法擋住文字方塊問題?

在行動端web頁面內定義了一個比較大的textarea大概能顯示15行字,點擊textarea的時候,輸入法彈出來會遮住textarea下端的幾行字,導致輸入的字數到10行之後,後面的輸入的字都被輸入法擋住了,變成了盲打,體驗很差。

請問使用js有什麼方法可以解決這種問題?

剛剛寫了個比較笨的方法,發現只有三星的手機以及android5.0能兼容,什麼小米,vivo之類的亂七八糟的機子都不認這個方法,醉了。 。

<textarea class="form_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>


漂亮男人漂亮男人2774 天前795

全部回覆(2)我來回復

  • 巴扎黑

    巴扎黑2017-05-15 16:54:01

    1.當textarea接收到focus事件時,自動將文字方塊捲動到螢幕頂端
    2.設計的輸入框不要超過半個螢幕,如果一定要超過,textarea有change事件,計算輸入了多少個字,對應的再把輸入框向上滾動

    這樣應該就能很友善了

    回覆
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-15 16:54:01

    使用fixed定位,bottom

    回覆
    0
  • 取消回覆