使用这两个代码行,我想先关闭虚拟键盘(手机(,然后它应该滚动到网站上的特定部分。
// closes keyboard
$('#input').blur();
// scroll to specific part
$("html, body").animate({ scrollTop: $('#section').offset().top }, 1000);
但有两件事我不想要:
- 当键盘消失时,页面不应跳转。
- 它不会跳转到目标部分,因为
"$('#section').offset().top"
页面正在向上跳跃,因此距离不正确。
我会使用超时,您需要在键盘关闭后触发代码。 您需要试验时间,检查您可以使用的最小超时是多少。
我不认为您可以使用javascript捕获键盘关闭时的事件。
// closes keyboard
$('#input').blur();
// scroll to specific part
setTimeout(function(){
$("html, body").animate({ scrollTop: $('#section').offset().top }, 1000);
}, 1000); // 1000 ms = 1 second, for example.