AngularJS newbie가 jQuery 배경과 함께 여기에 있습니다. AngularJS를 사용하여 윈도우 스크롤에서 투명에서 불투명으로 전환하는 배경을 가진 고정 톱 네비게이션을 개발하려고합니다. 그러나 창 스크롤을 $ 범위에 바인딩하는 데 문제가 있습니다.바인딩 윈도우가 AngularJS 방식으로 스크롤
는 여기에 지금까지 작동하지 않는이 작업은 다음과 같습니다
http://jsfiddle.net/brettwick86/pt33te3z/3/
function bgScroll($scope) {
angular.element(window).bind('scroll', function() {
$scope.scroll = window.pageYOffset;
$scope.height = document.getElementById('main-header').offsetHeight;
$scope.a = $scope.scroll/$scope.height;
$scope.bgColor = 'rgba(0,0,0,' + $scope.a + ')';
});
}
보기 :
<div ng-controller="bgScroll">
<nav class="navbar navbar-inverse navbar-bw navbar-fixed-top" role="navigation" style="background-color: {{ bgColor }};">
...
</nav>
</div>
이 어떤 도움이 크게 감사합니다!
참고 :'angular.element' 대표로 ** '이 포함 된 경우 JQuery'는 ** 만, 그렇지 않으면 JQuery와의 라이트 버전의 각도 **'JQlite' **를 사용합니다. – ryeballar
@ryeballar가 대답 –
에 반영되었습니다. 도움을 주셔서 감사합니다. $ scope. $ apply();는 제가 누락 된 것입니다. jQlite에 대해서는 알고 있지만 $ scope 객체가 angular.element와 어떤 관련이 있는지 이해하지 못했기 때문에 콜백 설명이 도움이됩니다. – Brett