2013-12-20 118 views
0

我有一个套接字事件,使用$scope.items.unshift(item)到列表顶部。使用角度在溢出-x自动停止自动滚动

的HTML是使用<ol ng-repeat="item in items"><li>{{item.name}}</li></ol>

的问题是,每当一个项目进入时,如果用户在所有

ol { overflow-y: auto; max-height: 100px; } 

然后向下滚动列表上的滚动位置的变化,如果他们读取一个项目的一半,它跳出视图或页面上多一点。

我试图能够将项目动态地添加到列表中,但没有滚动条移动...这样即使项目正在流入列表顶部,当前滚动位置仍然粘滞。

回答

0

我建议你在不改变它的情况下从scrollTop增加一个项目的高度。让你列表元素myList和做类似:

var currentScrollTop = myList.scrollTop(), 
itemHeight= 30; 
$scope.items.unshift(item) 
myList.scrollTop(currentScrollTop + itemHeight); 

我没有测试此代码,但它应该给你一个想法。

+0

谢谢。我正在考虑做一个说“读x消息”的div,它只在点击时填充'$ scope.items'。 – chovy