鍍金池/ 問(wèn)答/HTML5  Android  HTML/ 軟鍵盤擋住輸入框,然后輸入文件,view層往上彈,然后滑動(dòng)滑不下來(lái)

軟鍵盤擋住輸入框,然后輸入文件,view層往上彈,然后滑動(dòng)滑不下來(lái)

clipboard.png
藍(lán)色內(nèi)容在紅色的鍵盤內(nèi),然后在鍵盤輸入內(nèi)容的時(shí)候,紫色的view層就向上彈起,輸入完內(nèi)容后,view層就滑動(dòng)滑不下來(lái)了,這是為什么呢??有朋友遇到過(guò)這個(gè)問(wèn)題嗎,使用ionic + angular 技術(shù); 紫色為ion-content層

回答
編輯回答
黑與白

不知道這個(gè)能不能解決你的疑惑 http://blog.csdn.net/zhy42120...

2017年7月8日 16:12
編輯回答
臭榴蓮

試試這個(gè)方法,
用js解決

$("textarea").on("click",function(){
var target=this;
setTimeout(function(){
target.scrollIntoView(true);
target.scrollIntoViewIfNeeded();
},200);

});

//解決第三方軟鍵盤喚起時(shí)底部input輸入框被遮擋問(wèn)題

var bfscrolltop = document.body.scrollTop;//獲取軟鍵盤喚起前瀏覽器滾動(dòng)部分的高度
$("input.inputframe").focus(function(){//在這里‘input.inputframe’是我的底部輸入欄的輸入框,當(dāng)它獲取焦點(diǎn)時(shí)觸發(fā)事件
    interval = setInterval(function(){//設(shè)置一個(gè)計(jì)時(shí)器,時(shí)間設(shè)置與軟鍵盤彈出所需時(shí)間相近
    document.body.scrollTop = document.body.scrollHeight;//獲取焦點(diǎn)后將瀏覽器內(nèi)所有內(nèi)容高度賦給瀏覽器滾動(dòng)部分高度
    },100)
}).blur(function(){//設(shè)定輸入框失去焦點(diǎn)時(shí)的事件
    clearInterval(interval);//清除計(jì)時(shí)器
    document.body.scrollTop = bfscrolltop;將軟鍵盤喚起前的瀏覽器滾動(dòng)部分高度重新賦給改變后的高度
});
2017年2月6日 15:43
編輯回答
傻丟丟

針對(duì)于你的問(wèn)題我之前也遇到過(guò)孩總結(jié)了寫了一個(gè)blog 對(duì)你應(yīng)該有很大的幫助http://www.jianshu.com/p/3f93...

2017年3月12日 01:30