Próbuję umieścić pasek boczny w odpowiedniej dla mojej głównej zawartości. Próbowałem tutaj dyrektywy. Mimo tego, że uda mi się z górnym dodatkiem, to znaczy działa i trzyma się góry, gdy przewijam w dół, ale nie przewija się w przypadku, gdy zawartość paska bocznego jest dłuższa. Chcę to naprawić na górze i przenieść go przewijane zgodnie z główną treścią. ale jeśli jego zawartość jest większa niż ekran, powinna również przewijać do dołu i trzymać się na dole w tym samym czasie.Dyrektywa kątowa do umieszczania paska bocznego
<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');
}
});
});
}
};
})
Chcę być przewijany w przypadku, gdy pasek boczny jest dłuższy niż oczekiwano, ale powinien w tym przypadku przylegać do dna.
Jakie są style jesteś dostarczanie .affix-top? Czy istnieje górny pasek nawigacyjny? Jeśli nie, spróbuj ustawić maksymalną wysokość: 100% wewnątrz .affix-top. Fiddle pomoże szybko rozwiązać problem. – MKAka