Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从页面底部到顶部进行选项卡切换时,焦点在导航栏后面丢失_Javascript_Jquery_Internet Explorer_Google Chrome - Fatal编程技术网

Javascript 从页面底部到顶部进行选项卡切换时,焦点在导航栏后面丢失

Javascript 从页面底部到顶部进行选项卡切换时,焦点在导航栏后面丢失,javascript,jquery,internet-explorer,google-chrome,Javascript,Jquery,Internet Explorer,Google Chrome,对于我们的intranet站点,我们使用的是位于浏览器顶部固定位置的。在这个特定的页面上,用户将希望通过两列输入字段进行水平制表 Chrome 然而,在Chrome中,当用户从一列的底部到下一列的顶部进行制表时,浏览器通过将滚动条移动到最顶部来容纳用户,从而允许用户查看焦点当前所在的字段。下面是一个屏幕截图,显示了我的意思: Internet Explorer 然而,在IE(版本8、9和10)中,输入字段被移动到浏览器的最顶端,并在导航栏后面丢失,如下所示: 当焦点设置在第二列的顶部输入字段

对于我们的intranet站点,我们使用的是位于浏览器顶部固定位置的。在这个特定的页面上,用户将希望通过两列输入字段进行水平制表

Chrome

然而,在Chrome中,当用户从一列的底部到下一列的顶部进行制表时,浏览器通过将滚动条移动到最顶部来容纳用户,从而允许用户查看焦点当前所在的字段。下面是一个屏幕截图,显示了我的意思:

Internet Explorer

然而,在IE(版本8、9和10)中,输入字段被移动到浏览器的最顶端,并在导航栏后面丢失,如下所示:


当焦点设置在第二列的顶部输入字段时,是否有一种语法调整IE滚动条位置的方法

如果将类
first input
应用于导致此问题的每个输入,那么此JS/jQuery代码可能会有所帮助

$(window).keyup(function(event) {              // Catch all keyboard events
  if (event.keyCode == 9) {                    // We only care about the TAB Key
    var $activeEl = $(document.activeElement); // Get the currently focused element
    if ($activeEl.hasClass('first-input')) {   // If the element is a first-input...
      console.log("We hit a first-input, adjust scroll.");
      $(window).scrollTop($(window).scrollTop() - 50);     // Adjust scroll
    }                                                      // You can increase the number
  }
});

可能有一种方法可以检查它是否是第一个输入(除了使用硬编码的类名),但这是我想到的最快的方法。

您能提供一个链接来测试您的问题吗?不幸的是,它是一个内部网站,因此您无法访问它,除非您为我们工作;)这在Chrome中运行良好(同样如此),但在IE中我遇到了以下错误:
SCRIPT438:Object不支持属性或方法“apply”