1

我对我正在处理的网站有很长form的兴趣,并且有两列inputs. 当用户通过inputs视图选项卡向下滚动以保持焦点字段在视图中时。当用户到达第一列的底部并且选项卡焦点转到第二列的顶部时,视图不会向上滚动以跟随焦点,而仅在 Mozilla 和 IE 中。当我在 Chrome 上测试时,视图将向上滚动以保持焦点输入字段在视图中。

有谁知道如何处理这个跨浏览器问题并使页面自动向上滚动以供 Mozilla 和 IE 使用?

4

2 回答 2

2

我无法在任何浏览器上重现此内容,但如果您使用的是 jquery,您可以尝试将其添加到您的 javascript 中,看看是否有帮助。

$(function() {
    $("input").on("focus", function() {
         this.scrollIntoView(true);
    });
});
于 2013-08-29T17:16:09.447 回答
0

好的,我发现了问题。我的视图包含我试图通过标签浏览的视图,当向上滚动时,它隐藏在另一个视图后面。Chrome 意识到该视图落后于另一个视图,但 Mozilla 没有。

我的解决方案是使用scrollTop. 当我在右上角的输入收到选项卡焦点时,我将视图滚动到顶部:

$("#org-select").on("select2-focus", function(e) { 
    $("html, body").animate({ scrollTop: 0 }, "fast");
    return false;
});
于 2013-09-04T17:30:34.283 回答