SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

jQuery UI/プラグインの活用

jQuery UIのインタラクションを使ってみよう

jQuery UI/プラグインの活用(1)


並べ替え

 最後に並べ替えの使用例を見てみましょう(リスト5)。並べ替えは、ToDoリストなどのアイテムの優先順位づけを変更したい場合に利用できます。

[リスト5]並べ替えの使用例(jQueryUI_sort.html)
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
                      "http://www.w3.org/TR/html4/loose.dtd">
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>ソートサンプル</title>
<style type="text/css">
.square {
  width: 100px;
  height: 100px;
  background-color: red;
}
</style>

<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="js/jquery-ui-1.8.2.custom.min.js"></script>
<link type="text/css" href="css/ui-lightness/jquery-ui-1.8.2.custom.css" rel="stylesheet" />
<script type="text/javascript">
<!--
  // 1. ソートメソッドの利用例
    $(function () {
        $("#sortlist").sortable();
    });

    function doAction() {
        var msg = "";
  // 2. 並べ替える対象のリストの<div>タグを呼び出し、forで順次取り出す。
        $("#sortlist").children().each(function (i) {
            msg += $("#sortlist").children()[i].innerHTML + "\n";
        });
        alert(msg);
    }
//-->
</script>

  </head>
  <body>
  <h1 id="title">ソートサンプル</h1>
  // 3. 並べ替える要素を配置する。
    <div id="sortlist">
    <div id="msg0" class="square">1番目のメッセージ</div>
    <div id="msg1" class="square">2番目のメッセージ</div>
    <div id="msg2" class="square">3番目のメッセージ</div>
    </div>
  </body>
</html>

 並べ替えには「sortable」メソッドを使用し(1)、並べ替える要素を配置します(3)。ここでは、$("#sorlist").sortable();で並べ替える対象のリストの<div>タグを呼び出し、childrenで取り出したものをforで順次取り出しています。

図10 実行結果(実行前)
図10 実行結果(実行前)
図11 実行結果(実行途中)
図11 実行結果(実行途中)
図12 実行結果(実行後)
図12 実行結果(実行後)

まとめ

 第1回では、jQueryのユーザインタフェースを拡張するjQuery UIのインストールから、要素のドラッグ&ドロップ、リサイズ、並べ替えについて取り上げました。これらをうまく組み合わせて使うことによって、例えば、YouTubeのお気に入りリストを視覚的にドラッグ&ドロップして並べ替えたり、ソートさせたりというようなアプリケーションの構築につながります。アイディア次第で、今までよりも使い勝手のよいアプリケーションがどんどん増えていくきっかけになるでしょう。

 次回は、jQuery UIのDialog、Datepicker、AutoComplete、ProgressBarを用いた使用例を取り上げる予定です。

参考資料

この記事は参考になりましたか?

連載通知を行うには会員登録(無料)が必要です。
既に会員の方はを行ってください。
jQuery UI/プラグインの活用連載記事一覧

もっと読む

この記事の著者

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるLaravel実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

WINGSプロジェクト asa(asa)

WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。 2026年時点での登録メンバは約50名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/5273 2010/07/28 13:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー