如何触发事件滚动到达页面中的特定div

时间:2018-05-14 05:22:44

标签: javascript angularjs

我有一个页面,它包含不同的部分。当用户打开此页面时,我一次获取所有数据并在UI中显示它。获取所有部分数据并在UI中显示它需要时间。

避免这种缓慢的问题。我想改变我的页面执行。

要做到这一点,首先我想在用户向下滚动到特定的非强制性部分(div)之后加载一些必需的部分数据我想加载这些部分的数据。

为了实现这一点,我在用户滚动时遇到识别div(非强制性部分)位置的问题。

任何人都可以建议我如何识别用户卷轴到达我的div。

2 个答案:

答案 0 :(得分:2)

angular.element($window).bind("scroll", function() 

每次滚动当前页面时都会调用此方法。

angular.element(document.querySelector('.testing'));

以上代码可以获取您要识别的div。

if(element[0] && (windowElement[0].pageYOffset >= element[0].offsetTop))

条件将验证滚动到达指定的div。

angular.element($window).bind("scroll", function() {
        var windowElement = angular.element($window);       
        var element = angular.element(document.querySelector('.testing'));
        if(element[0] && (windowElement[0].pageYOffset >= element[0].offsetTop)){
            $scope.yourFunction();  
        }
    });

答案 1 :(得分:-1)

$(window).scroll(function () {
    if ($(window).scrollTop() >= $(document).height() - $(window).height() - 50) {

        $scope.yourFunction();
    }
});