2016-03-22 3 views
0

Я использую angularjs WITHOUT jquery и пытаюсь создать прослушиватель событий прокрутки.pure angularjs scroll event listener

попробовал этот подход:

$rootScope.$watch(function() { 
    return $window.scrollY; 
    }, function(n,o) { 
    console.log('scroll'); 
    }); 

но работа dosen't ..

мне удалось достичь этой цели, используя эту технику, чтобы создать размер Слушатель:

$rootScope.$watch(function() { // Listens to window size change 
    return $window.innerWidth; 
    }, function(n, o) { 
    console.log('resize'); 
    }); 

есть правильный способ создания чистого антурального свитка?

ответ

2

создания прокрутки слушателя событий, 'Угловой путь', на самом деле очень просто, используя $ окно:

$window.onscroll = function() { 
    console.log('scroll'); 
}; 
+0

Awesome !! это то, что я искал! –

0

Да. ваш правильный AngularJs предоставляет $ anchorScroll, чтобы прокручивать страницу, но не так эффективно. Вы можете либо пойти сверху или снизу, как это. Если вы хотите прокручивать в определенном положении по вертикали или по горизонтали $ anchorScroll не имеет этого параметра. Вы также должны пойти для нормального javascript даже для анимации. Если вы хотите изучить больше в Angular Scroll please have a look at this answer. Grate !!