我对我正在处理的网站有很长form
的兴趣,并且有两列inputs
. 当用户通过inputs
视图选项卡向下滚动以保持焦点字段在视图中时。当用户到达第一列的底部并且选项卡焦点转到第二列的顶部时,视图不会向上滚动以跟随焦点,而仅在 Mozilla 和 IE 中。当我在 Chrome 上测试时,视图将向上滚动以保持焦点输入字段在视图中。
有谁知道如何处理这个跨浏览器问题并使页面自动向上滚动以供 Mozilla 和 IE 使用?
我对我正在处理的网站有很长form
的兴趣,并且有两列inputs
. 当用户通过inputs
视图选项卡向下滚动以保持焦点字段在视图中时。当用户到达第一列的底部并且选项卡焦点转到第二列的顶部时,视图不会向上滚动以跟随焦点,而仅在 Mozilla 和 IE 中。当我在 Chrome 上测试时,视图将向上滚动以保持焦点输入字段在视图中。
有谁知道如何处理这个跨浏览器问题并使页面自动向上滚动以供 Mozilla 和 IE 使用?
我无法在任何浏览器上重现此内容,但如果您使用的是 jquery,您可以尝试将其添加到您的 javascript 中,看看是否有帮助。
$(function() {
$("input").on("focus", function() {
this.scrollIntoView(true);
});
});
好的,我发现了问题。我的视图包含我试图通过标签浏览的视图,当向上滚动时,它隐藏在另一个视图后面。Chrome 意识到该视图落后于另一个视图,但 Mozilla 没有。
我的解决方案是使用scrollTop
. 当我在右上角的输入收到选项卡焦点时,我将视图滚动到顶部:
$("#org-select").on("select2-focus", function(e) {
$("html, body").animate({ scrollTop: 0 }, "fast");
return false;
});