自動化無しに生活無し

WEBとかAIとかLinux関係をひたすら書く備忘録系ブログ

JavaScriptで並び替えをするならSortable.js【jQuery不要のライブラリ】

thumbnail

CDN

<script src="https://cdn.jsdelivr.net/npm/sortablejs@latest/Sortable.min.js"></script>

HTML

<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width,initial-scale=1">
    <title>Hello World test!!</title>

    <script src="https://cdn.jsdelivr.net/npm/sortablejs@latest/Sortable.min.js"></script>
</head>
<body>

    <div class="sort_area">
        <div class="sort_item" style="background:orange;padding:0.5rem;margin:0.5rem;">1</div>
        <div class="sort_item" style="background:orange;padding:0.5rem;margin:0.5rem;">2</div>
        <div class="sort_item" style="background:orange;padding:0.5rem;margin:0.5rem;">3</div>
        <div class="sort_item" style="background:orange;padding:0.5rem;margin:0.5rem;">4</div>
        <div class="sort_item" style="background:orange;padding:0.5rem;margin:0.5rem;">5</div>
        <div class="sort_item" style="background:orange;padding:0.5rem;margin:0.5rem;">6</div>
    </div>

<script>
const sort_areas    = document.querySelectorAll(".sort_area");

for (let area of sort_areas ){
    new Sortable(area, {
        animation: 150,
        ghostClass: 'dragging',
        onEnd: function(){ console.log("ソート完了") },
    });
}
</script>

</body>
</html>

動かすとこうなる

結論

ソート終了時、onEndで何か処理を実行する事ができる。例えば、Ajaxとか。

ドラッグ中にクラスを割り当てる事ができるので、色を変えるとか色々できると思う。

詳細は公式にて。

https://sortablejs.github.io/Sortable/

スポンサーリンク

シェアボタン

Twitter LINEで送る Facebook はてなブログ