interact.jsのドラッグ&ドロップ サンプル2
ドラッグ要素
<div class="drag">ドラッグ要素</div>
<script src="https://unpkg.com/interactjs/dist/interact.min.js"></script>
.drag {
display: grid;
place-items: center;
width: 120px;
height: 120px;
border-radius: 10px;
background: skyblue;
touch-action: none;
user-select: none;
}
const pos = { x: 0, y: 0 }
interact('.drag').draggable({
listeners: {
move(event) {
pos.x += event.dx
pos.y += event.dy
event.target.style.transform =
`translate(${pos.x}px, ${pos.y}px)`
},
},
modifiers: [
interact.modifiers.restrict({
restriction: 'parent',
endOnly: true
})
],
})
元記事を表示する