在移动浏览器中,当焦点输入文本时,我希望此输入滚动到顶部
$(this.$el).find('input, textarea').on('focus', function(e) {
setTimeout((function() {
var pos = $(this).position();
if (pos.top > window.innerHeight) {
var scrollTopOffset = pos.top - window.innerHeight + this.offsetHeight + 10
$scroller.scrollTop($scroller.scrollTop() + scrollTopOffset)
}
}).bind(this), 500); // After the keyboard up
$(this).focus()
})
输入滚动到正确位置后,无法对焦输入
触摸输入然后焦点正常, 之后键盘向上然后输入滚动到顶部, 然后失去焦点
滚动后如何聚焦输入?
答案 0 :(得分:1)
我试过这个,通过模拟移动浏览器,它可以工作。
$('input, textarea').on('focus', function() {
document.body.scrollTop = $(this).offset().top;
$(this).focus();
});
答案 1 :(得分:0)
希望这会对你有所帮助..谢谢
}