You don't need to call `handleInfiniteScrollDistance` because the `$watch` function call its callback each time you started to watch on a scope value. This code cause the `handleInfiniteScrollDistance` function to be called twice at the same time.