gihyo.jp » DEVELOPER STAGE » 特集 » jQueryではじめるAjax » 第5回 jQuery UIによるユーザインターフェースの改良

jQueryではじめるAjax

第5回 jQuery UIによるユーザインターフェースの改良

今回は,jQuery UIを使用してサンプルアプリケーションのユーザインターフェースを改良したいと思います。 jQuery UIが提供する「Dialog」「Draggables」「Droppables」「Sortables」を使用して,ビデオプレーヤーとお気に入り機能を実装します。

jQuery UIってなに?

jQuery UIとは,マウス操作やユーザインターフェースを拡張するjQueryのライブラリです。 現在の最新版jQuery UI 1.5bでは,以下の機能が提供されています。

表1 jQuery UI 1.5bの機能

ライブラリ説明
Draggables DOM要素をドラッグできるようにする
Droppables DraggableなDOM要素をドロップできるようにする
Sortables マウス操作でDOM要素の順番を入れ替えられるようにする
Selectables DOM要素をマウスで選択できるようにする
Resizables DOM要素の大きさをマウスで変更できるようにする
Accordion 折りたたみ可能な領域をサポートするコンポーネント
Datepicker 日付選択のためのコンポーネント
Dialog 高機能なダイアログコンポーネント
Slider スライダーコンポーネント
Tabs タブ機能を提供するコンポーネント

詳細な解説とデモは,以下の場所で見ることが出来ます。

参考

今回は,「Dialog」「Draggables」「Droppables」「Sortables」を使ってサンプルをより使いやすく拡張したいと思います。

準備

jQuery UI 1.5bは「jQuery UI: Widgets, Components, and Interaction」からダウンロードできます。「jQuery UI 1.5b」のリンクをクリックすると,ダウンロードページが開きます。

図1 jQuery UIダウンロード

図1 jQuery UIダウンロード

アーカイブの内容

アーカイブの内容は以下のようになっています。

表2 jQuery UI 1.5bアーカイブの内容

ディレクトリ/ファイル説明
datepicker/ 「Datepicker」のライブラリとデモ
demos/ jQuery UI 1.5bのデモ
themes/ 標準で提供されるテーマ「Flora」のスタイルシート及び画像
GPL-LICENSE.txt GNU General Public License Ver 2のテキスト
jquery-1.2.3.min.js jQuery 1.2.3
jquery.dimensions.js 座標計算のためのプラグイン
MIT-LICENSE.txt MIT Licenseのテキスト
ui.accordion.js 「Accordion」コンポーネントのファイル
ui.dialog.js 「Dialog」コンポーネントのファイル
ui.draggable.ext.js 「Draggables」機能の拡張オプションのファイル
ui.draggable.js 「Draggables」機能のファイル
ui.droppable.ext.js 「Droppables」機能の拡張オプションのファイル
ui.droppable.js 「Droppables」機能のファイル
ui.mouse.js マウス操作を管理するプラグイン
ui.resizable.js 「Resizables」機能のファイル
ui.selectable.js 「Selectables」機能のファイル
ui.slider.js 「Slider」コンポーネントのファイル
ui.sortable.ext.js 「Sortables」機能の拡張オプションのファイル
ui.sortable.js 「Sortables」機能のファイル
ui.tabs.ext.js 「Tabs」コンポーネントの拡張オプションのファイル
ui.tabs.js 「Tabs」コンポーネントのファイル

今回使用する「Dialog」「Draggables」「Droppables」「Sortables」に必要なファイルは以下の通りです。

  • themes/
  • jquery-1.2.3.min.js
  • jquery.dimensions.js
  • ui.mouse.js
  • ui.resizable.js
  • ui.dialog.js
  • ui.draggable.js
  • ui.draggable.ext.js
  • ui.droppable.js
  • ui.droppable.ext.js
  • ui.sortable.ext.js
  • ui.sortable.js

jQuery UI 1.5bを使うために,今回は同梱されているjQuery 1.2.3を使うことにします。バージョンが上がりますが,これまでのサンプルの動作に影響はありません。

ライブラリの設定

ライブラリの各ファイルを,head要素の子要素に以下のように指定します(リスト1)。

リスト1 ライブラリファイルの設定

<script type="text/javascript" src="jquery-1.2.3.min.js"></script>
<script type="text/javascript" src="jquery.dimensions.js"></script>
<script type="text/javascript" src="ui.mouse.js"></script>
<script type="text/javascript" src="ui.resizable.js"></script>
<script type="text/javascript" src="ui.dialog.js"></script>
<script type="text/javascript" src="ui.draggable.js"></script>
<script type="text/javascript" src="ui.draggable.ext.js"></script>
<script type="text/javascript" src="ui.droppable.js"></script>
<script type="text/javascript" src="ui.droppable.ext.js"></script>
<script type="text/javascript" src="ui.sortable.js"></script>
<script type="text/javascript" src="ui.sortable.ext.js"></script>

テーマの設定

jQuery UIではテーマがサポートされ,コンポーネントの外観をカスタマイズできるようになっています。 標準ではFloraテーマが同梱されていますので,それを使用することにします。

まず,head要素の子要素に以下のように指定してFloraテーマのcssファイルをリンクします(リスト2)。

リスト2 Floraテーマcssファイルのリンク

<link rel="stylesheet" href="themes/flora/flora.all.css" type="text/css" media="screen" title="Flora" />

body要素にfloraクラスを設定します(リスト3)。

リスト3 Floraテーマクラスの設定

<body class="flora">

これで準備は完了です。それでは実装をはじめましょう。

著者プロフィール

池田正一(いけだまさかず)

仕事ではもっぱらJavaを使い,たまにC/C++を書かされ,WebサービスをRubyで開発するプログラマ。ドラえもん好きでドラえもんSuperDatabaseの管理人。stacktrace.jpにて頭の中のStackを出力中。

コメント

コメントの記入

パスサポ

多数の情報処理技術者試験対策書籍の発行実績を誇る技術評論社がお届けする,資格試験合格サイト「めざせ! 情報処理試験 パスサポ」が開設されました。

ピックアップ

サクセスストーリーに続く,快適サーバー運用管理のヒント!

データの増大,煩雑な管理,システムダウン,セキュリティなど,迫りくる課題からシステム管理者の負担を軽くするポイントを解説します。

gihyo.jp インフラエンジニア情報局

ネットワークやITにかかわるあらゆる業種で必要とされるインフラエンジニアに向けた技術情報や心構え,その魅力について多角的に紹介。

テストエンジニア ステーション

いま,ITに関わるあらゆる開発業務で注目されつつあるテスト系エンジニアをターゲットにしたコンテンツサイトを展開します。

一行クイックアンケート

gihyo.jpで取り上げてほしいネタは?

※検索はページ右上の検索ボックスをご利用ください。

その他の連載

2010年版SEO体得講座

本連載では,いまや企業サイトの戦略の1つとして欠かすことのできないSEOについて,最新トレンドからすぐに使えるTipsまでを紹介します。

小型Linuxサーバの最高峰 OpenBlockS 600活用指南

搭載メモリの増加,CPUクロックの向上など,あらゆる面が強化された期待の新モデルOpenBlockS 600。この記事ではOpenBlockS 600の紹介から,活用するためのさまざまなノウハウを紹介していきます。

はじめMath! Javaでコンピュータ数学

プログラミング言語入門者向けに,知っていると役立つ数学的トピックスを紹介します。簡単な演習問題と解説で,即活用できる知識を目指します。

教科書には載っていない ネットワークエンジニアの実践技術

ネットワークエンジニア,インフラエンジニアのトラブル対応には,時には「教科書通りにいかない」テクニックが必要となります。資格試験では得られないこうした実践的な技術について,実例を元に紹介します。

Googleケータイ,世に現る

2008年9月,Googleが中心となって開発されている「Android」を採用した携帯電話「T-Mobile G1」が発表されました。本連載ではT-Mobile G1を中心にGoogleケータイに迫ります。

モバゲーオープンプラットフォームに挑戦!――面白法人カヤック流モバゲーオープンプラットフォーム企画と開発のイロハ

2010年1月にリリースとなったモバゲーオープンプラットフォーム。その制作企業であるカヤックが,アイデアを企画に落とし込み,開発までのノウハウを紹介します。

プロトタイピングツールSketchFlowを用いた,Silverlightアプリ開発

SketchFlowプロトタイプ作成からアプリケーション開発までをExpression Blend 3を使って実践的に解説します。

Ubuntu Weekly Recipe

Ubuntuの強力なデスクトップ機能を活用するための,いろいろなレシピをお届けします。

連載一覧

gihyo.jp

  • DEVELOPER STAGE
  • ADMINISTRATOR STAGE
  • WEB+DESIGN STAGE
  • LIFESTYLE STAGE
  • SCIENCE STAGE
  • NEWS & REPORT

書籍案内

  • 新刊書籍
  • 書籍ジャンル一覧
  • 書籍シリーズ一覧
  • 新刊ピックアップ
  • ロングセラー
  • 電脳会議

定期刊行物一覧

  • Software Design
  • WEB+DB PRESS
  • Web Site Expert
  • 組込みプレス

最近のコメント