Jquery 如何防止在输入焦点上滚动容器?

Jquery 如何防止在输入焦点上滚动容器?,jquery,html,scroll,position,Jquery,Html,Scroll,Position,我有一个不带垂直滚动条的包含div和一个部分可见的输入。当我聚焦此输入时,包含的div向上移动,这使标题部分消失 可以使用下面的JSFIDLE示例再现该场景 是否有一种解决方案可以部分隐藏输入?当然。我不知道为什么您希望关注一个部分隐藏的字段,但仍然从小提琴中添加代码: $('#btn').on('click', function(){ $('#inputField').focus(); $("#scrollable").scrollTop(0); }); 演示: 或者,您可以使

我有一个不带垂直滚动条的包含div和一个部分可见的输入。当我聚焦此输入时,包含的div向上移动,这使标题部分消失

可以使用下面的JSFIDLE示例再现该场景


是否有一种解决方案可以部分隐藏输入?

当然。我不知道为什么您希望关注一个部分隐藏的字段,但仍然从小提琴中添加代码:

$('#btn').on('click', function(){
   $('#inputField').focus();
   $("#scrollable").scrollTop(0);
});
演示:


或者,您可以使用
.scrollTop()
(无参数)在设置焦点之前检索滚动位置,并在调用
后将其恢复到相同位置。在chrome中,焦点()

似乎没有这样做。你在测试哪种浏览器?我自己也在使用Chrome。到目前为止,这只会有所帮助。因为当我输入时,同样的事情发生了。我想将keydown事件绑定到输入并再次执行scrollTop会有所帮助。但我更希望使用css规则来解决这个问题。但这可能是不可能的。