我可以在无容器挖空元素中使用动画过渡绑定吗?

时间:2015-09-25 22:24:06

标签: javascript knockout.js

如果我有一组用无容器foreach构造的DOM元素,是否可以使用它们的淘汰动画过渡?例如。 afteradd,aftermove,afterremove。

类似的东西:

<!-- ko foreach: somelist(), afterAdd: afterAddCallback -->
    <div>dom element for list item</div>
<!-- /ko -->

1 个答案:

答案 0 :(得分:1)

更新:我愚蠢地搞砸了我的测试代码。下面的代码将使用div(已注释掉)或虚拟标记在控制台上生成消息。所以,是的。

&#13;
&#13;
ko.applyBindings({
  myItems: ko.observableArray(['A', 'B', 'C']),
  yellowFadeIn: function(element, index, data) {
    console.debug("Something");
  },
  addItem: function() {
    this.myItems.push('New item');
  }
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/knockout/3.3.0/knockout-min.js"></script>
<!--div data-bind="foreach: {data:myItems, afterAdd: yellowFadeIn}" -->
<!-- ko foreach: { data: myItems, afterAdd: yellowFadeIn } -->
  <div data-bind="text: $data"></div>
<!-- /ko -->
  <!-- /div -->

<button data-bind="click: addItem">Add</button>
&#13;
&#13;
&#13;