Javascript DIV中的长UL列表,自动滚动到LI元素
我有一个奇怪的问题,我有一个divJavascript DIV中的长UL列表,自动滚动到LI元素,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有一个奇怪的问题,我有一个div _inputHelper // it has fixed height ( 200px ) 其中有非常非常长的列表(大约200个元素),我想使用jQuery滚动到列表上的一些,但问题是,当我以这种方式滚动整个列表时: $( _inputHelper.find('ul') ).animate( { top : -1 * ( $(_this).position().top - $(_this).height() ) } , 200); 在适当的位置向下滚动,但
_inputHelper // it has fixed height ( 200px )
其中有非常非常长的
列表(大约200个元素),我想使用jQuery滚动到列表上的一些
,但问题是,当我以这种方式滚动整个列表时:
$( _inputHelper.find('ul') ).animate( { top : -1 * ( $(_this).position().top - $(_this).height() ) } , 200);
在适当的位置向下滚动,但我无法使用鼠标滚动列表,更准确地说,这里是一个打印屏幕:
我想我可能滚动的方式不对,但我也尝试过滚动顶部/页边空白顶部,但仍然不起作用
一些测试:
有什么帮助吗?根据您的小提琴,您需要使用
scrollTop
,请尝试以下操作:
$('.input-helper').animate({
scrollTop : $("#test").position().top,
}, 200);
检查
在您的代码中,您只是将
ul
元素移出父视图;现在,您正在更改父元素的滚动。我似乎记得几年前有过一次这个问题(将内部元素滚动到某个点,而不是将视口滚动到某个元素),我想我用找到的jQuery插件解决了这个问题。让它变得简单
使用
scrollTop
而不是top
。。。你能分享标记或者在JSFIDDLUps上做个例子吗,对不起,拼写错误,我指的是scrollTop,而不是scrollTo:)我会尝试做一些jsfiddle在这里:)好的,所以我必须滚动div本身,而不是ul列表:)谢谢,感谢今天的大量编码;-)
$('.input-helper').animate({
scrollTop : $("#test").position().top,
}, 200);