我有这个
$window.onscroll = function() { scrollFunction() };
function scrollFunction() {
if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20) {
document.getElementById("btt").style.display = "block";
} else {
document.getElementById("btt").style.display = "none";
}
}
在一个控制器中运行,但是当我导航到另一个页面后,scrollFunction也会被触发。如何将该功能仅限于特定页面(控制器)。
答案 0 :(得分:3)
当控制器销毁时需要停止侦听滚动事件
angular.element($window).on('scroll', scrollFunction);
scope.$on('$destroy', function () {
angular.element($window).off('scroll', scrollFunction);
});