Я пытаюсь привязать боковую панель соответствующим основному контенту. Я пробовал директиву здесь. Хотя я преуспеваю в топ-аффиксе, я работаю и придерживаюсь вершины при прокрутке вниз, но он не может прокручивать в случае, если содержимое боковых панелей больше. Я хочу исправить его сверху и переместить его прокручиваемым в соответствии с основным контентом. но если его содержимое больше, чем экран, оно также должно прокручиваться вниз и одновременно придерживаться дна.
<div class="background-white" sidebar-affix data-spy="affix" data-offset-top="80" data-offset-bottom="10">My sidebar content here</div>
.directive('sidebarAffix', function($window) {
return {
restrict: 'EA',
link: function(scope, element, attrs) {
var originOffsetTop = element[0].offsetTop;
scope.condition = function() {
return $window.pageYOffset > originOffsetTop;
};
angular.element($window).bind('scroll', function() {
scope.$apply(function() {
console.log($window.pageYOffset > originOffsetTop);
if (scope.condition()) {
angular.element(element).removeClass('affix-top');
angular.element(element).addClass('affix');
} else {
angular.element(element).addClass('affix-top');
angular.element(element).removeClass('affix');
}
});
});
}
};
})
Я хочу быть прокручиваемым, если боковая панель длиннее ожидаемой, но в этом случае она должна придерживаться нижней части.