来自带有scrolltop

时间:2015-08-03 01:48:37

标签: javascript angularjs cordova onsen-ui

我似乎无法获得elementById所以我试图找出如何在指令中调用函数。

<div class="class" home-page"></div>

module.controller('AppController', function($scope) {
        $scope.callDirect = function() {
            $scope.callFunction();
        };
}

module.directive("homePage", function ($window) {
        return {
            scope: { homePage: '&callbackFn' },
            link: function(scope, element, attrs) {
                element.bind('scroll', function () {
                });

                scope.callFunction = function()
                {
                    console.log(element[0].scrollTop);
                }
            },
       };
});

我觉得这在javascript中真的很容易,但是使用Angular真的很难。我想要做的就是通过单击按钮滚动到顶部。

1 个答案:

答案 0 :(得分:2)

有几个框架,ngSmoothScroll和angular-smoothscroll是两个框架,它们可以让您轻松地完成所需的工作。

至于Angular更难说的话。我可以看到它来自哪里,有一次我想到了同样的事情。然而,它确实没有,如果有的话,它会变得更容易。它只需要一种不同的思维方式。因此,当发生挫折时,请记住隧道末端的灯光。

我还没有运行此代码片段以了解它是否可行,但这是一个放入指令的示例函数

element.bind('click', function () {
    console.log(element[0].scrollTop());
});

我不确定是否定义了元素[0] .scrollTop。