Как заставить функцию прокрутки окна работать в Angularjs - PullRequest
0 голосов
/ 12 ноября 2018

После поиска в Stackoverflow предыдущего поста большинство решений не решают мою проблему.

Мигрирую из jquery в angularjs. Мне нужно преобразовать эти три строки кодов из jquery в angularjs

 $(window).scroll(function(){
var position = $(window).scrollTop();
var bottom = $(document).height() - $(window).height();

Вот рабочий код для jquery , который оповещает о положении и нижних значениях

<script>

        $(document).ready(function(){

            $(window).scroll(function(){

                var position = $(window).scrollTop();
                var bottom = $(document).height() - $(window).height();

alert(position);
alert(bottom);
                   if( position == bottom ){

                /*
                        $.ajax({
                            url: 'fetch_data.php',
                            type: 'post',
                            data: {row:20},
                            success: function(response){
                                $(".post:last").after(response).show().fadeIn("slow");
                            }
                        });
                   */
                }

            });

        });

        </script>

Вот моя борьба с angularjs , но я не могу заставить его работать. Может ли кто-нибудь помочь мне

    <script>
        var fetch = angular.module('myapp', []);

        fetch.controller('fetchCtrl', ['$scope', '$http','$window', function ($scope, $http, $window) {

angular.element($window).bind("scroll", function() {
var position = $(window).scrollTop();
var bottom = $(document).height() - $(window).height();

alert(position);
alert(bottom);


if( position == bottom ){
          /*
             $scope.getPosts = function(){

                $http({
                method: 'post',
                url: 'getData.php',
                data: {row:20}
                }).then(function successCallback(response) {
                $scope.posts = response.data;


                });
             }
*/

            }

});

        }]);

        </script>

1 Ответ

0 голосов
/ 13 ноября 2018

Здесь решение, которое работает для меня, заключается в реализации jquery перед вызовом angular. см. это решение ссылки AngularJs element.height () не функция

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...