layoutEnd

更新日: 2019-12-19

layoutEnd

grid.layout()メソッドが呼び出され、アイテムが配置された後にトリガーされます。 レイアウトアニメーション中にgrid.layout()メソッドが呼び出された場合、 処理中のレイアウトプロセスは中断され、 layoutEndイベントはトリガーされないことに注意してください。


パラメータ

items: array
レイアウト対象のアイテムの配列。 これらのアイテムはlayoutStartイベントのコールバックが受け取るパラメータと常に同じであることに注意してください。 そのため、例えば、レイアウトアニメーション中にアイテムを削除し、 別のレイアウトを呼び出さない場合、 削除したアイテムは、まだアイテム配列に含まれています。 元々は、レイアウト中に何らかの影響で「中断」された時に、 それらのアイテムをフィルタリングすることでした。 しかし、その解決法はとてもエラーになりやすく、説明と理解がとても難しいものでした。

grid.on('layoutEnd', function (items) {
  console.log(items);
});

デモ

layoutEndイベントが呼び出され、 console.logに出力します。

アイテム1
アイテム2
アイテム3
JavaScript
var grid = new Muuri('.grid', {
  dragEnabled: true
});
grid.on('layoutStart', function (items) {
  console.log('Start');
});
grid.on('layoutEnd', function (items) {
  console.log('End');
});
HTML
<div class="grid">
  <div class="item">
    <div class="item-content">アイテム1</div>
  </div>
  <div class="item">
    <div class="item-content">アイテム2</div>
  </div>
  <div class="item">
    <div class="item-content">アイテム3</div>
  </div>
</div>
CSS
.grid {
  position: relative;
}

.item {
  display: block;
  position: absolute;
  width: 100px;
  height: 100px;
  margin: 5px;
  z-index: 1;
  color: #000;
  border: 1px solid #000;
}

.item-content {
  position: relative;
  width: 100%;
  height: 100%;
}


© 2015 Haltu Oy. Licensed under the MIT license

このコンテンツはHaltuによるMuuriドキュメントを翻訳/改変したものです。