2016-04-22 9 views
0

角度コントローラにテキストのカルーセルをシミュレートする方法はありますか?AngularJS - 文字列の配列からテキストを連続的に変更する

のような:

//html 
<span> {{ notes }}</span> 

//angular controller 

    var i = 0; 
    var array = ["A", "B", "C", "D", "E"]; 

    while (true) { 
     $scope.notes = array[i]; 
     i = i + 1; 
     if (i = array.length - 1) { 
      i = 0; 
     } 
    } 

無限ループせずにこれを行う方法はありますか?私はテキストのカルーセルを垂直に作成しようとしており、CSSクラスでフェードアニメーションを試してこれを達成しようとしています。

答えて

1

ラップする代わりに、無限ループの、のsetIntervalを使用し、%を使用します。

var i = 0; 
var array = ['A', 'B', 'C', 'D', 'E']; 

$interval(function() { 
    $scope.notes = array[i++ % array.length]; 
}, 1000); 

ここでは例を参照してください:https://jsfiddle.net/8pLwjybf/3/

0

は、私はあなたが$intervalを探していると信じて、あなたのインデックス

var i = 0; 
var array = ["A", "B", "C", "D", "E"]; 

function next() { 
    var idx = ++i % array.length; 
    $scope.notes = array[idx]; 
} 

setInterval(next, someTime); 
関連する問題