我有一个函数检查用户输入是否正确,如果不正确,我希望页面滚动以关注特定的输入字段。
$("#myElementID").focus();
这和预期的一样,页面立即跳转到输入字段,并将其放在页面的顶部,没有任何填充。这使得它很难看到,所以我想把它放在屏幕的中心。我在SO上找到了this answer,它显示了以下代码:
$("#myElementID").focus(function () {
var center = $(window).height() / 2;
var top = $(this).offset().top;
if (top > center) {
$('html, body').animate({ scrollTop: top - center }, 'fast');
}
});
现在它根本不聚焦,我试过alert,它似乎根本没有进入功能。
如何使输入焦点位于屏幕中心?
1条答案
按热度按时间7kqas0il1#
此代码将处理程序绑定到焦点事件:
它相当于:
您应该运行此代码一次:
然后使用
$("#myElementID").focus();
触发输入字段上的焦点事件。