首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jQuery滚动页面,使光标停留在“逻辑中心”

jQuery滚动页面,使光标停留在“逻辑中心”
EN

Stack Overflow用户
提问于 2012-06-05 22:06:16
回答 2查看 1.1K关注 0票数 0

我有一个巨大的html表单,有近350个控件,需要用户屏幕高度的5-6倍。用户从页面的开头开始填写每个输入字段,然后继续。一旦光标靠近屏幕底部变得丰富,用户必须能够看到一些下一个输入字段,所以问题是:我想避免使用滚动条。我想设置一些“页边距”(比如每页边200px )

如果用户单击靠近屏幕边缘的控件,则此机制也必须起作用

我正在寻找jQuery解决方案

尝试使用jQuery.ScrollTo,但不知道如何将逻辑嵌入到代码中。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-06 01:21:29

这应该就行了

http://jsfiddle.net/JsWnk/

代码语言:javascript
运行
复制
$(document).ready(function() {

    $('input').focus(function() {

        var padding = 100; // Desired page "padding"

        var lbound = $(this).offset().top - $(window).height() + padding;
        var ubound = $(this).offset().top - padding;

        if ($(window).scrollTop() < lbound)
            $(window).scrollTop(lbound);
        else if ($(window).scrollTop() > ubound)
            $(window).scrollTop(ubound);

    });
});
​
票数 1
EN

Stack Overflow用户

发布于 2012-06-06 00:11:59

像这样的东西应该行得通。

http://jsfiddle.net/q9QHQ/

代码语言:javascript
运行
复制
$(document).ready(function() {

    $('input').focus(function() {

        if ($(this).offset().top > 100)
            $(window).scrollTop($(this).offset().top + 100);

    });
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10898864

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档