安卓手機輸入法彈出,消失會觸發
window.onresize事件,我們一般的解決方法是獲取焦點,底部隱藏,失去焦點,底部菜單出現,但是,有些人會點擊這個按鈕收起鍵牌

那么,這個時候你的失去焦點無效,還有一種方法呢,是把position:fixed;改成position:absoult;這樣底部菜單就不會頂上去,但是這種方法,經過我的實驗,還是會被輸入法頂上去,這兩種方法都不要完全解決問題,還有一種是布局的問題,主頁面:position:relative,底部菜單:position:absoult;這個方法在一定的時間段內有用,這幾種方法在做逛周邊的時候我都用過,結果全被測試打回,這個bug只能解決,畢竟有些處女座是無法忍受這種問題,寫了那么多的廢話,下面貼出解決辦法:兼容安卓和蘋果:
安卓手機。針對這個輸入法隱藏事件

安卓手機有這個事件,iphone沒有,iphone點擊這個按鈕會讓input框失去焦點
window.onresize = function () { var h = $(window).height(); //console.log(h+','+window.screen.availHeight) var u = navigator.userAgent; if (u.indexOf('Android') > -1 || u.indexOf('Linux') > -1) { if(h <= window.screen.availHeight/2){ $('#toNav').css({'position':'absoult',"margin-top":"-.5rem",'display':'none'}); }else{ $('#toNav').css({'position':'fixed','display':'block'}); } }}$('input').on('focus',function(){ $('#toNav').hide();})$('input').on('blur',function(){ $('#toNav').show();})注:有代碼潔癖的人可看下面的,前面代碼,已解決底部菜單被輸入法頂上去的問題
另外input框是去焦點,底部菜單出現時,會出現底部菜單被彈上去,然后再彈下來,這個一般有些人都不會忍,所有我們失去焦點需要改變一下底部的樣式,在安卓上和iphone上有時候底部的樣式有可能會不同,這個時候我們需要判斷手機類型去修改樣式。
以上所述是小編給大家介紹的Android中底部菜單被輸入法頂上去的解決方案,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!
新聞熱點
疑難解答