0
我正在使用聊天应用程序,并且问题似乎是滚动底部的指令,在ng-repeat中的最后一项在消息中有图像时无法正常工作。 所以它只是不会一直滚动底部。 我认为原因是该指令在图像完全加载之前滚动。Scroll Bottom Angularjs指令
// Scroll to bottom directive
.directive('schrollBottom', function ($timeout) {
return {
scope: {
schrollBottom: "="
},
link: function (scope, element) {
scope.$watchCollection('schrollBottom', function (newValue) {
if (newValue)
{
$timeout(function() {
$(element[0]).scrollTop($(element)[0].scrollHeight);
}, 0, false);
}
});
}
}
})
检查[这里](https://stackoverflow.com/questions/12354865/image-onload-event-and-browser-cache)看看如何等待图像加载之前做一些事情。您可以向所有图像添加一个类,并在滚动之前等待该类的所有图像加载。 – Lansana
@Lansana,谢谢你有办法在一个指令中有东西,一个是看收集和第二个条件,如果图像加载? – Beny
我会保持你有什么逻辑,并把它放在'img.onload'回调处理程序中。然后任何滚动到底部将只会发生一次所有图像加载。 – Lansana