Jquery 如何防止在输入焦点上滚动容器?
我有一个不带垂直滚动条的包含div和一个部分可见的输入。当我聚焦此输入时,包含的div向上移动,这使标题部分消失 可以使用下面的JSFIDLE示例再现该场景Jquery 如何防止在输入焦点上滚动容器?,jquery,html,scroll,position,Jquery,Html,Scroll,Position,我有一个不带垂直滚动条的包含div和一个部分可见的输入。当我聚焦此输入时,包含的div向上移动,这使标题部分消失 可以使用下面的JSFIDLE示例再现该场景 是否有一种解决方案可以部分隐藏输入?当然。我不知道为什么您希望关注一个部分隐藏的字段,但仍然从小提琴中添加代码: $('#btn').on('click', function(){ $('#inputField').focus(); $("#scrollable").scrollTop(0); }); 演示: 或者,您可以使
是否有一种解决方案可以部分隐藏输入?当然。我不知道为什么您希望关注一个部分隐藏的字段,但仍然从小提琴中添加代码:
$('#btn').on('click', function(){
$('#inputField').focus();
$("#scrollable").scrollTop(0);
});
演示:
或者,您可以使用
.scrollTop()
(无参数)在设置焦点之前检索滚动位置,并在调用后将其恢复到相同位置。在chrome中,焦点()
似乎没有这样做。你在测试哪种浏览器?我自己也在使用Chrome。到目前为止,这只会有所帮助。因为当我输入时,同样的事情发生了。我想将keydown事件绑定到输入并再次执行scrollTop会有所帮助。但我更希望使用css规则来解决这个问题。但这可能是不可能的。