●Yahoo! User Interface Library (YUI)
- 入手先
◆解凍後のフォルダ構成
yui
├ build (ライブラリ本体:実際に必要なのはこれだけ!)
├ examples (サンプル)
├ docs (マニュアル類)
└ releasenotes (リリースノート)
※buildフォルダ内には各種ライブラリがあり、ライブラリごとに複数のファイルが格納されている。
calendar
├ assets (カレンダー表示に使用するcss、画像)
├ calendar.js (通常のcalendarライブラリソース)
├ calendar-debug.js (デバッグ関連)
└ calendar-min.js (calendar.jsからコメント、改行などを削除した軽量版)
※「-min」の付いた.jsファイルは通常のソースからコメントなどを削除した軽量版で、通常の半分以下のサイズになっている。動作も速くなるので、実際に設置するときには「-min」を利用するとよい。
assets
└ skins
└ sam
※buildフォルダ内のassetsには各種ライブラリ用のテンプレートが用意されており、ライブラリ内のassetsの代わりに使える。
◆必須ファイルと格納場所
・yahoo.js (YUI本体)
→build/yahoo/yahoo-min.js
・dom.js (YUI DOM関連ライブラリ)
→build/dom/dom-min.js
・event.js (YUI イベント関連ライブラリ)
→build/event/event-min.js
・yahoo-dom-event.js (必須の3ファイルをひとつにしたもの)
→build/yahoo-dom-event/yahoo-dom-event.js
◆ユーテリティ&コントロール
- Animation
指定した通りに要素を動かしたり、視覚的効果を追加するためのユーティリティー
- Autocomplete
入力候補を出す仕組みを提供。データソースとしてXMLはもちろん、javascriptの配列なども利用することが可能
- Calendar
カレンダーUIを作成することができる。選択した日付をEvent追加で簡単に取得できたりする。
- Connection Manager
AJAXを行うためのユーティリティー
- Dialog
Panelにフォームを作成する機能をつかしたクラス。もちろん普通のフォームではなくて"AJAXフォーム"(適当に名づけてみる)を行うことが可能。
- Dom Collection
DOM スクリプティングを簡単に共通的に扱うユーティリティー
- Drag and Drop
ドラッグ&ドロップ可能な要素を作るためのユーティリティー
- Event
onClickやonSelectなどのイベントハンドラーを共通的に扱うユーティリティー
- Menu
メニューバーや、コンテキストメニュー(右クリック)を作成するクラス。
- Module
YUI Container Family(Module, Overlay, Tooltip, Panel, Dialog, SimpleDialog)の基本クラス。他のContainer Familyでも良く使う、hide(), show() などのメソッドはこのクラスのもの。単体では使わないかもしれないが知っておくと役立つかも
- Overlay
YUI Container Family(Module, Overlay, Tooltip, Panel, Dialog, SimpleDialog)の基本クラス。Module + 位置といったカンジの機能。単体では使わないかもしれないが知っておくと役立つかも
- Panel
まさにパネルを作成するためのクラス。ドラッグできたり、クローズボタンがあったりOSのウィンドウさながら。影をつけたりディテールもこだわっていたりする。
- SimpleDialog
基本的にDialogとあまりかわらないが、ユーザに注意文を出して、'Yes', 'No' を聞くjavascriptのalertにも似た機能に特化したクラス。
- Tooltip
HTML Elementにカーソルを合わせると吹き出しがでるUIを作成することができる。ちょっとしたヘルプメッセージの表示に最適。
参考サイト - JavaScript(AJAX)サンプル集 Yahoo! User Interface Library - YUI