jQuery【 jQuery UI 】ドラッグ&ドロップで並べ替えができる sortable の使用方法

colmun_main10134

jQuery UI の sortable を利用すると、画面からドラッグ&ドロップで HTML 要素の並べ替えが可能になります。
今回は、sortable の使用方法について紹介します。

目次

 
1.sortable を使用して項目を並べ替える
2.sortable を使用してタブを並べ替える

1.sortable を使用して項目を並べ替える

 
jQuery UI を使用して、項目の並べ替えができるように実装します。
1 ~ 5 の 項目を、ドラッグ & ドロップで入れ替えてみて下さい。

 
上のサンプルのソースコードは次の通りです。

<script type="text/javascript" src="https://code.jquery.com/ui/1.12.0/jquery-ui.min.js"></script>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.12.1/themes/hot-sneaks/jquery-ui.css">
<script type="text/javascript">
<!--
$(function() {
  $("#sortableArea").sortable();
});
//-->
</script>

<div style="background-color:#CCC; padding : 20px;">
  <div id="sortableArea">
    <div class="ui-state-default">1</div>
    <div class="ui-state-default">2</div>
    <div class="ui-state-default">3</div>
    <div class="ui-state-default">4</div>
    <div class="ui-state-default">5</div>
  </div>
</div>

jQuery UI の導入についてはjQuery【 jQuery UI 】UI の導入と使用方法をご参照下さい。

このページのサンプルは、テーマ「 Hot Sneaks 」を選択しています。
他のテーマを選択すると タブの印象も変わってきます。

▲目次へ戻る

 

2.sortable を使用してタブを並べ替える

 
今度は、jQuery UI を使用して タブの並べ替えができるように実装します。
1 ~ 3 の タブを、ドラッグ & ドロップで入れ替えてみて下さい。

タブ1の内容です。
タブ2の内容です。
タブ3の内容です。

 
上のサンプルのソースコードは次の通りです。

<script type="text/javascript" src="https://code.jquery.com/ui/1.12.0/jquery-ui.min.js"></script>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.12.1/themes/hot-sneaks/jquery-ui.css">
<script type="text/javascript">
<!--
$(function() {
  var tabs = $("#tabArea").tabs();
  tabs.find(".ui-tabs-nav").sortable({
    axis: "x",
    stop: function() {
      tabs.tabs("refresh");
    }
  });
});
//-->
</script>

<div id="tabs" style="background-color:#CCC; padding : 20px;">
  <div id="tabArea">
    <ul>
      <li><a href="#tab1">1</a></li>
      <li><a href="#tab2">2</a></li>
      <li><a href="#tab3">3</a></li>
    </ul>
    <div id="tab1">
      タブ1の内容です。
    </div>
    <div id="tab2">
      タブ2の内容です。
    </div>
    <div id="tab3">
      タブ3の内容です。
    </div>
  </div>
</div>

▲目次へ戻る

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です