

リストの一番最後に自動スクロールをしたいと考えてます。ng-attr-
idと$indexを使えばできそうなのですが、具体的にどんなコードを書けばいいかわかりません。アドバイスお願いします。


CC BY-SA 3.0
2015-07-03T03:55:22.403
11983
2015-09-01T07:57:10.500
8748
question
monaca angularjs
ng-repeatで最後のリストにIDを追加する方法


最後の要素にだけIDを付けるのであれば`$last`を使用すると簡単だと思います。

[code]

    app = angular.module('SampleApp', []);
    app.controller('SampleCtrl', [
        '$scope',
        function ($scope) {
            return $scope.items = [
                {
                    'name': 'Item1',
                    'price': 1200
                },
                {
                    'name': 'Item2',
                    'price': 1000
                },
                {
                    'name': 'Item3',
                    'price': 1600
                },
                {
                    'name': 'Item4',
                    'price': 2000
                },
                {
                    'name': 'Item5',
                    'price': 1800
                }
            ];
        }
    ]);
[/code]

[code]

    ul {
      list-style: none;
      padding-left: 0;
    }
    #last_element {
      color: #ff0000;
    }
[/code]

[code]

    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
    
    <body ng-app='SampleApp'>
      <div class='container' ng-controller='SampleCtrl'>
        <h4>「#last_element」だけ色を変える</h4>
        <ul>
          <li ng-repeat='item in items'>
            <div ng-attr-id="{{$last &amp;&amp; 'last_element'}}">名前: {{item.name}}, 値段: {{item.price}}</div>
          </li>
        </ul>
      </div>
    </body>
[/code]


CC BY-SA 3.0
2015-07-03T06:03:59.320
11986
2015-07-03T06:03:59.320
3516
11983
answer