问题:
当选择输入时,我希望屏幕滚动,以便聚焦输入正好在屏幕顶部.
我希望这适用于iOS和所有其他移动设备.
这是目前在iOS上发生的事情:
这就是我想要发生的事情……请注意页面滚动到的位置:
我目前正在尝试的代码是:
$('#input').on('focus focusin', function(e) {
e.preventDefault();
$('html').animate({
scrollTop: $('#anchor').offset().top
}, 300);
})
这段代码在桌面上工作得很好,但是一旦我在iPhone上加载页面,它就会完全停止工作,并且默认的滚动行为会在第一个gif中看到.
解决方法:
所以你只需要它滚动所以输入的顶部成为屏幕的顶部?
我在输入上方添加了2个像素的间隙,这样您就可以看到输入顶部的边框了.
$('#input').on('focus', function(e) {
e.preventDefault();
$('html, body').animate({
scrollTop: $(this).offset().top-2;
}, 1000);
})
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!