2015-10-20 101 views
7

我使用以下指令https://github.com/d-oliveros/ngSmoothScroll使該項目中的東西平滑地滾動到選定的元素。ngSmoothScroll角度指令不起作用

這裏是我的代碼:

angular 
    .module('sccateringApp', [ 
    'ngAnimate', 
    'ngAria', 
    'ngCookies', 
    'ngMessages', 
    'ngResource', 
    'ngRoute', 
    'ngSanitize', 
    'ngTouch', 
    'ui.materialize', 
    'smoothScroll' 
    ]) 

'smoothScroll'是實際的依賴列入項目:這就是腳本包含和我app.js文件裏面我有

... 
<!-- build:js(.) scripts/vendor.js --> 
    <!-- bower:js --> 
    <script src="bower_components/jquery/dist/jquery.js"></script> 
    <script src="bower_components/angular/angular.js"></script> 
    <script src="bower_components/bootstrap/dist/js/bootstrap.js"></script> 
    <script src="bower_components/angular-animate/angular-animate.js"></script> 
    <script src="bower_components/angular-aria/angular-aria.js"></script> 
    <script src="bower_components/angular-cookies/angular-cookies.js"></script> 
    <script src="bower_components/angular-messages/angular-messages.js"></script> 
    <script src="bower_components/angular-resource/angular-resource.js"></script> 
    <script src="bower_components/angular-route/angular-route.js"></script> 
    <script src="bower_components/angular-sanitize/angular-sanitize.js"></script> 
    <script src="bower_components/angular-touch/angular-touch.js"></script> 
    <!-- endbower --> 
    <!-- endbuild --> 
    <script src="bower_components/ngSmoothScroll/dist/angular-smooth-scroll.min.js"></script> 
     <!-- build:js({.tmp,app}) scripts/scripts.js --> 
     <script src="scripts/app.js"></script> 
     <script src="scripts/controllers/initcontroller.js"></script> 
     <!-- endbuild --> 
     <script src="scripts/libs/materialize.min.js"></script> 
     <script src="scripts/libs/angular-materialize.js"></script> 
</body> 
... 

。下面這個帖子這個一開始給出的鏈接內的指示就是我我的觀點裏做:

<li><a href="#" scroll-to="service-info" container-id="service-info">Contáctame</a></li> 
... 

<section class="service-info" id="service-info"> 
<h1 class="sofia-font">Detalles de Servicio</h1> 
... 

然而,沒有平滑滾動發生,也沒有通過任何給定的警告/錯誤控制檯或jslint我的grunt serve任務。

任何想法我可能做錯了什麼?我是非常新的角度,我仍然試圖找到通過它的方式。

+0

我也在尋找同樣的東西。你有沒有運氣? – sooon

+0

您的滾動字段和容器標識具有相同的元素標識,因此,不會發生滾動。 – o4ohel

回答

2

我不確定,但可能是因爲您在鏈接上使用容器標識而不是非定位標記。我使用它來滾動到我的頁腳中的一個元素。我的代碼是:

//the anchor link in my nav 
<a href="#" scroll-to="footer" duration="2500">Click Me</a> 
... 

//the element I want to scroll to 
<div id="footer"></div> 
... 

縮小的版本不是爲我工作,所以我的劇本去如下:

<script src="/bower_components/angular/angular.js"></script> 
<script src="/bower_components/angular-animate/angular-animate.js"></script> 
<script src="/bower_components/angular-aria/angular-aria.js"></script> 
<script src="/bower_components/angular-messages/angular-messages.js"></script> 
<script src="/bower_components/angular-material/angular-material.js"></script> 
<script src="/bower_components/angular-sanitize/angular-sanitize.js"></script> 

<script src="/bower_components/ngSmoothScroll/lib/angular-smooth-scroll.js"></script> 

<script src="/js/app.module.js"></script> 
<script src="/js/app.controller.js"></script> 
<script src="/js/app.service.js"></script> 

而對於模塊:

angular 
    .module('glasser', [ 
     'ngMaterial', 
     'ngSanitize', 
     'smoothScroll' 
    ]) 
0

它沒有爲我工作,而不是嘗試Angular-Scroll。它有一個現場演示,首先在您的瀏覽器中進行測試。

它還有一個'間諜'指令,因此您可以將類添加到視圖中的元素。