很难用语言来解释,所以我做了一个 fiddle 来更好地解释这个问题:http://jsfiddle.net/j2zurbbv/1/ .当第一次超时触发时,容器 div 不会“滚动”,这是我想要的行为。然而,当输入在 div 的可见部分之外时(就像第二次超时一样),容器 div 以该输入为中心。
容器 CSS:
#container {
overflow: hidden;
height: 200px;
position: absolute;
width: 200px;
}
郑重声明,我只在 Chrome 37.0 上测试过
最佳答案
设法解决了这个问题。每当您以编程方式关注 overflow: hidden< 的可见区域之外的元素时,通过执行
div AND 每当用户输入此类元素时。演示 JSFiddle(不防止输入滚动)http://jsfiddle.net/j2zurbbv/2/ .document.getElementById('container').scrollTop = 0;
来对抗浏览器的滚动
关于javascript - 防止以 overflow hidden 区域的焦点输入为中心,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25792441/