javascript - 移動端頁面 手機(jī)鍵盤擋住了輸入框
問題描述
正常情況
問題
每次當(dāng)手機(jī)切換app或窗口時,再回到該頁面時 第一次 點(diǎn)擊輸入框,鍵盤就會把輸入框擋住,只有第一次點(diǎn)擊會擋住。這是什么原因?qū)е碌模咳缓笪野l(fā)現(xiàn)此時頁面的滾動條是沒有滾動到最底部, 所以我給輸入框聚焦時綁定了個事件$(’.input’).on(’focus’, function() {
$(window).scrollTop(99999);
});但是頁面的滾動條還是沒有滾到最底部,輸入框還是給鍵盤擋住了。
$(document) $(’body, html’) 也試過了.
問題解答
回答1:安卓瀏覽器在軟鍵盤彈出后不會像iOS瀏覽器那樣重新計算window的高度,所以導(dǎo)致安卓瀏覽器window的高度在軟鍵盤彈出的時候為“軟鍵盤的高度+(window的高度-軟鍵盤的高度)”;而其實,此時,合理的高度應(yīng)該是頁面的高度+軟鍵盤彈出的高度;就此解決方案為如下:
var winHeight = $(window).height(); //獲取當(dāng)前頁面高度 $(window).resize(function() {var thisHeight = $(this).height();if (winHeight - thisHeight > 50) { //當(dāng)軟鍵盤彈出,在這里面操作 //alert(’aaa’); $(’body’).css(’height’, winHeight + ’px’);} else { //alert(’bbb’); //當(dāng)軟鍵盤收起,在此處操作 $(’body’).css(’height’, ’100%’);} }); 回答2:
你這是底部輸入框樣式的問題吧,試試這個上面的方法。/a/11...
回答3:二樓正解,其實就是瀏覽器兼容性問題
回答4:好像沒有啥好辦法
相關(guān)文章:
1. node.js - mongodb查找子對象的名稱為某個值的對象的方法2. html5 - datatables 加載不出來數(shù)據(jù)。3. 運(yùn)行python程序時出現(xiàn)“應(yīng)用程序發(fā)生異常”的內(nèi)存錯誤?4. docker 下面創(chuàng)建的IMAGE 他們的 ID 一樣?這個是怎么回事????5. 利用IPMI遠(yuǎn)程安裝centos報錯!6. 前端 - @media query 使用出現(xiàn)的問題?7. javascript - 在 model里定義的 引用表模型時,model為undefined。8. 測試自動化html元素選擇器元素ID或DataAttribute [關(guān)閉]9. javascript - QQ第三方登錄的問題10. html5和Flash對抗是什么情況?

網(wǎng)公網(wǎng)安備