<div class="grid grid-1">
  <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 class="item">
    <div class="item-content">4</div>
  </div>
  <div class="item">
    <div class="item-content">5</div>
  </div>
  <div class="item">
    <div class="item-content">6</div>
  </div>
  <div class="item">
    <div class="item-content">7</div>
  </div>
  <div class="item">
    <div class="item-content">8</div>
  </div>
  <div class="item">
    <div class="item-content">9</div>
  </div>
  <div class="item">
    <div class="item-content">10</div>
  </div>
  <div class="item">
    <div class="item-content">11</div>
  </div>
  <div class="item">
    <div class="item-content">12</div>
  </div>
  <div class="item">
    <div class="item-content">13</div>
  </div>
  <div class="item">
    <div class="item-content">14</div>
  </div>
  <div class="item">
    <div class="item-content">15</div>
  </div>
  <div class="item">
    <div class="item-content">16</div>
  </div>
  <div class="item">
    <div class="item-content">17</div>
  </div>
  <div class="item">
    <div class="item-content">18</div>
  </div>
  <div class="item">
    <div class="item-content">19</div>
  </div>
  <div class="item">
    <div class="item-content">20</div>
  </div>
</div>

<div class="grid grid-2">
  <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 class="item">
    <div class="item-content">4</div>
  </div>
  <div class="item">
    <div class="item-content">5</div>
  </div>
  <div class="item">
    <div class="item-content">6</div>
  </div>
  <div class="item">
    <div class="item-content">7</div>
  </div>
  <div class="item">
    <div class="item-content">8</div>
  </div>
  <div class="item">
    <div class="item-content">9</div>
  </div>
  <div class="item">
    <div class="item-content">10</div>
  </div>
  <div class="item">
    <div class="item-content">11</div>
  </div>
  <div class="item">
    <div class="item-content">12</div>
  </div>
  <div class="item">
    <div class="item-content">13</div>
  </div>
  <div class="item">
    <div class="item-content">14</div>
  </div>
  <div class="item">
    <div class="item-content">15</div>
  </div>
  <div class="item">
    <div class="item-content">16</div>
  </div>
  <div class="item">
    <div class="item-content">17</div>
  </div>
  <div class="item">
    <div class="item-content">18</div>
  </div>
  <div class="item">
    <div class="item-content">19</div>
  </div>
  <div class="item">
    <div class="item-content">20</div>
  </div>
</div>
body {
  display: flex;
  justify-content: space-evenly;
  margin: 20px 0;
}
.grid {
  position: relative;
  width: calc(50% - 40px);
  background: #ccc;
  border: 5px solid transparent;
}
.item {
  position: absolute;
  width: 100px;
  height: 100px;
  line-height: 100px;
  margin: 5px;
  z-index: 1;
}
.item.muuri-item-hidden {
  z-index: 0;
}
.item.muuri-item-releasing {
  z-index: 2;
}
.item.muuri-item-dragging {
  z-index: 3;
}
.item-content {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  background: red;
  font-size: 30px;
  color: white;
  cursor: pointer;
}
.grid-2 .item-content {
  background: green;
}
.item.muuri-item-dragging .item-content,
.item.muuri-item-releasing .item-content {
  background: blue;
}
var grid1 = new Muuri('.grid-1', {
  dragEnabled: true,
  dragContainer: document.body,
  dragSort: function () {
    return [grid1, grid2]
  }
});

var cloneMap = {};
var grid2 = new Muuri('.grid-2', {
  dragEnabled: true,
  dragContainer: document.body,
  dragSort: true
})
.on('receive', function (data) {
  cloneMap[data.item._id] = {
    item: data.item,
    grid: data.fromGrid,
    index: data.fromIndex
  };
})
.on('send', function (data) {
  delete cloneMap[data.item._id];
})
.on('dragReleaseStart', function (item) {
  var cloneData = cloneMap[item._id];
  if (cloneData) {
    delete cloneMap[item._id];

    var clone = cloneData.item.getElement().cloneNode(true);
    clone.setAttribute('class', 'item');
    clone.children[0].setAttribute('style', '');
 
    var items = cloneData.grid.add(clone, {index: cloneData.index, active: false});
    cloneData.grid.show(items);
  }
});
Run Pen

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

  1. https://cdnjs.cloudflare.com/ajax/libs/web-animations/2.3.2/web-animations.min.js
  2. https://cdn.jsdelivr.net/gh/haltu/muuri@0.9.5/dist/muuri.min.js