2014-10-30 87 views
3

我使用名为duScroll的Angular插件(https://github.com/oblador/angular-scroll/)在单击href时进行滚动。所有部分都在一个高度为500px的容器中,称为'scroll-container'。但滚动没有发生。当内容位于容器内时,角度滚动不起作用

我能够通过改变线duScroll.js

proto.scrollToElement = function() {... 
... 
    return angular.element(document.querySelector('.scroll-container')).scrollTo(0, top-45, duration, easing); 
} 

得到它ATLEAST滚动但还是滚动不一致而不能正常工作。我哪里错了?

Plnkr:http://plnkr.co/edit/UVh4cjCdMuD9kBMgTgJB?p=preview

回答

1

你会更好使用the documentation列出的指令du-smooth-scrolldu-scroll-container

你的情况,像这样的工作:

<nav du-scroll-container="scroll-container"> 
    <ul> 
    <li><a du-smooth-scroll href="#section-1" >Section 1</a></li> 
    … 
    </ul> 
</nav> 
<div id="scroll-container" class="scroll-container"> 
    … 
</div> 
0

我有同样的问题,我已经把范围缩小到设定高度引起的问题。我怀疑听众会遭到轰炸,因此在设置高度后,标签点击从不会发生。在我的情况下,注释掉JQuery行设置高度使其工作,但这不是我的选择。

你有更好的解决方案吗?

顺便说一下,使用du-scroll-container在我的情况下也不起作用。我不知道为什么。这是我的代码:

... 
    <nav du-scroll-container="scrollContainer"> 
       <ul class="nav nav-pills"> 
        <li><a du-smooth-scroll="current" du-scrollspy>Current</a></li> 
        <li><a du-smooth-scroll="forecast" du-scrollspy>Forecast</a></li> 
        <li ng-if="launch.webcams"><a href="#webcams" du-smooth-scroll du-scrollspy>Webcams</a></li> 
        <li><a href="#details" du-smooth-scroll du-scrollspy>Details</a></li> 
       </ul> 
      </nav> 
     </div> 

      <div id="scrollContainer"> 
<section id="current"> 
    ...