을 간단하게 작업하지 스크롤에 대한 정보 만 가지고 계속합니다. 스크롤이 향상 같이 :
<button scrollup ng-click="buttonAction()">Click me</button>
그리고 마지막으로 당신의 스크롤 물건이에 있어야합니다 : 그것은 추가로 스크롤 동작을 추가하는보기에
$scope.buttonAction = function() {
console.log('button action');
}
는 지시어를 정의 이제 정상적으로 버튼을 사용하지만 scrollup 지침 :
app.directive('scrollup', function ($document) {
return {
restrict: 'A',
link: function (scope, elm, attrs) {
elm.bind("click", function() {
// Maybe abstract this out in an animation service:
// Ofcourse you can replace all this with the jQ
// syntax you have above if you are using jQ
function scrollToTop(element, to, duration) {
if (duration < 0) return;
var difference = to - element.scrollTop;
var perTick = difference/duration * 10;
setTimeout(function() {
element.scrollTop = element.scrollTop + perTick;
scrollToTop(element, to, duration - 10);
}, 10);
}
// then just add dependency and call it
scrollToTop($document[0].body, 0, 400);
});
}
};
});
지금 당신은 당신의 컨트롤러에 필요한뿐만 아니라 지시문을 추가하여 행동 우포늪 점프가 어떤 작업을 추가 할 수 있습니다.
컨트롤러에 jQuery를 전혀 작성하지 않아야합니다. AngularJS를 사용하는 목적을 이깁니다. –