使用Angularjs时,Scrollspy for Materialize根本不滚动

时间:2016-01-25 18:26:59

标签: javascript jquery angularjs materialize scrollspy

我正在尝试使用Materialise(http://materializecss.com/scrollspy.html)中的scrollspy来定位使用ng-repeat创建的每个div。

然而,在我看来好像scrollspy类没有做任何事情。 DOM只是重新加载并指向页面的一部分,而不是滚动到页面的那一部分。

另一个问题是使用href="/#community#sharingLove"正在更改网站网址。无论如何滚动都可以在不添加URL的情况下工作吗?

<div class="full-height row" ng-controller="CommunityController">
    <div class="col l10 main-content">
        <div ng-repeat="principle in acmPrinciples" id ="{{principle.id}}" class="row full-width centering-text section scrollspy">
            <div class ="col-md-12">
                <h4>{{principle.title}}<h4>
            </div>
            <div class ="col-md-12 comm-description-container">
                <p class="paragraph-style larger-font-size">
                    {{principle.description}}
                 </p>
            </div>
            <div class ="col-md-12">
                <video class="responsive-video comm-video-height" controls>
                    <source ng-src="{{principle.videoURL}}" type="video/mp4">
                </video>
            </div>
        </div>
    </div>

    <div class="col l2 scroll-content">
        <div class="row">
            <div class="col hide-on-small-only m3 l2 scroll-items">
                <ul class="section table-of-contents">
                     <li><a href="#/community#experiencingGod">Experiencing God</a></li>
                     <li><a href="#/community#sharingLove">Sharing Love</a></li>
                     <li><a href="#/community#conntectingLives">Connecting Lives</a></li>
                     <li><a href="#/community#declaringTruth">Declaring Truth</a></li>
                </ul>
            </div>
        </div>
    </div>
</div>

我已经链接了jQuery,bootstrap和materialize。最后一件事:实现的其他功能对我而言,不仅仅是卷轴。我也做了

$(document).ready(function(){
    $('.scrollspy').scrollSpy();
});  

1 个答案:

答案 0 :(得分:2)

我认为如果从href中删除#/ community它应该可以工作。 href应该包含块的id,而不是额外的url信息。例如尝试使用

T(n) <= cn
T(n) <= 2c*floor(n/2) + n
T(n) <= 2c*n/2 + n
cn   <= n(c + 1)