
連載:Ajaxで作るインタラクティブWebアプリケーション
(1)
Ajaxフォトアルバムのフェードイン画像フレームを作ろう
田中 孝太郎
dotimpac.to
2005/11/11
| 目次 ページ内の項目をクリックするとスクロールします。 ページ内リンクでスムーススクロール@ZEROBASE CASTを使用しています |
| Ajaxで作るインタラクティブWebアプリケーション JavaScriptライブラリによるAjaxフレームワーク Hello Ajax! フェードイン表示される画像フレームをつくる |
| JavaScriptライブラリによるAjaxフレームワーク |
- - PR -
AjaxにおけるJavaScriptプログラミングを支援するためのライブラリが、すでに多くのプロジェクトで開発され、オープンソースライセンスの元で公開されている。
これらは、Ajaxアプリケーションで非同期リクエストを行うためのXMLHTTPRequestの呼び出しをラッピングして容易に使えるようにしているほか、JavaScriptで頻繁に行うDOM操作やスタイルの加工、イベントの管理などを支援する関数を用意している。さらに、従来煩雑になりがちだったJavaScriptでのプログラミングに、よりオブジェクト指向的な指針を与えるフレームワークとしても機能する。
また、上記のAjaxフレームワークの元で、さまざまなユーザーインターフェイスを部品として提供するエフェクトライブラリやUIコンポーネントも登場している。これらのライブラリを使うことで、Ajaxアプリケーションをよりユーザーフレンドリーにすることができる。ユーザーにリクエストを意識させないAjaxアプリケーションでは、現在の状態を明示したり更新に注意を促すエフェクトはアプリケーションの使用感に重要な意味を持つので、それらを容易にするライブラリもぜひ活用すべきだ。
現在開発されている主要なライブラリを表に示すが、本連載では「Prototype」と「script.aculo.us」を使用していくこととする。Prototypeは現在最も標準的といえるJavaScriptフレームワークで、国内でも「はてな」や「mixi」といったWebサービスが一部で採用している。script.aculo.usはハイライトやフェードイン/アウト、ドラッグ&ドロップといった高度なエフェクトを柔軟に制御できる優秀なライブラリである。
|
||||||||||||
| 表1 主なJavaScriptライブラリ |
| Piccy: Ajax Photo Album |
prototye.jsとscript.aculo.usの実用例として、筆者の開発しているWebフォトアルバムソフト「Piccy」を紹介しよう。本連載で解説するAjaxフォトアルバムは、このPiccyを簡易にしたものと考えてもらっていい。
![]() |
| 画面1 Piccyスクリーンショット |
「Piccy」とはオンラインで閲覧と管理が可能なフォトアルバムアプリケーションとして筆者が開発しているソフトウェアだ。主要な部分でAjaxを活用している。ここでは内容の詳細については触れないが、サンプルサイトで操作を試していただければどういうものかはある程度分かっていただけるかと思う(詳細は筆者サイト記事を参照のこと)。
![]() |
| 画面2 Piccyスクリーンショット |
フェードインやドラッグ&ドロップなど、動きやインタラクションのある機能が多く盛り込まれているが、これらの機能のほとんどはPrototypeとscript.aculo.usの機能によって実現している。ブラウザごとの仕様の違いも多くはライブラリの関数に吸収されているので、JavaScriptプログラミングにありがちなクロスブラウザのための条件分岐も最低限しか行っていない。ライブラリの恩恵は非常に大きい。
少し前までは、Ajaxというと検索に関する機能やサンプルが多かったが、当然ながらAjaxで実現できることは検索の高機能化にとどまらない(その威力をアピールしてAjaxを知らしめたのはあのGoogle Mapsなのだ)。ライブラリが充実してきたことで、より複雑な機能や大規模な開発にチャレンジすることができるだろう。今後Ajaxの世界がより拡大していくことを期待したい。
| 2/3 |
|
INDEX |
||
| Ajaxフォトアルバムのフェードイン画像フレームを作ろう | ||
| Page1<Ajaxを実感しよう> 最も手軽なインタラクティブアプリ開発環境としてのAjax |
||
| Page2<JavaScriptライブラリによるAjaxフレームワーク>
Piccy: Ajax Photo Album |
||
| Page3<Hello
Ajax! フェードイン表示される画像フレームを作る> ライブラリをダウンロードする/Prototypeのクラススタイル文法/DOM操作とフェードインエフェクト/イベントの管理/ユーザーの操作に対するリアクション |
||
AjaxでつくるインタラクティブWebアプリケーション バックナンバー
- 第1回 Ajaxフォトアルバムのフェードイン画像フレームを作ろう
- 第2回 ズーミングできるWebフォトアルバムウィンドウを作ろう
- 最終回 JSONによるデータ通信でAjaxアルバムを完成させる
AjaxとPHPでリッチクライアント
Ajaxを扱うためのサーバーサイドのPHPライブラリを紹介する。リリースされたライブラリ、AjaxACを活用して好みの検索窓に改造してみよう
Ajax うきうき Watch
Ajaxという流行技術の定義を明確にしながら、Ajaxの動向からうきうきするような面白いもの、確実に押さえておきたいものを厳選してお届けしていく
- 第1回 Webアプリのユーザビリティを改善しまくるAjax
- 第2回 Ajax、それはWeb 2.0へと続く道
- 第3回 どんなに無茶をやっても「それもありかな」なAjax
- 第4回 自動車業界のAjaxを活用したキャンペーンを目撃せよ
- 第5回 “どのブラウザでも動くAjax”を共有財産として育てよう
- 第6回 プロプライエタリ2.0から考えるAjaxの公開/非公開部
- 第7回 メモリリークが小さくなったGoogle Maps APIの新版
- 第8回 “CGUI” 消費者が作り出すUIの時代突入
- 第9回 巨大化するAjaxライブラリをシンプルにする新たな流れ
- 第10回 地図のように年代を移動できるMITのAjax歴史年表
- 第11回 JSONがRFCになり、どんどんこなれるAjaxサービス
- 第12回 サーバが通信を開始できるComet活用Webチャット
- 第13回 オンラインゲームで検索精度を上げるGoogleの巧みさ
- 第14回 IE7とFirefox 2への利用者の大移動は起こるか?
- 第15回 グーグル検索エンジンを特定ジャンル専用に、Co-op
- 第16回 帯域やデバイス領域をフル活用させる“モバイルAjax”
- 第17回 新しい技術を模索するYahoo!、Google、MS
- 第18回 Ajaxの高度な使用例、Yahoo! pipes
- 第19回 Apollo参戦でウィジェット開発者の争奪戦が激化
- 第20回 Twitter登場で注目されるRTコミュニケーションツール
- 第21回 過熱するTwitterブームとMicrosoftのマッシュアップ
- 第22回 iPhoneのAjax戦略、そして今日もWeb APIは増加する
- 第23回 Ajax開発者がヒーローになるとき、それはいま!
- 第24回 携帯電話への拡張を進めるGoogleとWeb隠しコマンド
- 第25回 Ajaxで加速!? エンタープライズ2.0とWebOSの普及
- 第26回 「言葉」を超えた説得力を持つAjaxの存在感と広がり
- 第27回 ゲームから読み解く、俺スクリプト時代の知的な挑戦
- 第28回 マッシュアップ元年が終わり、2008年はどうなる?
- 第29回 Twitterやクラウドへも分岐するAjax/Web APIの道
- 第30回 Ajaxはじめて物語、そしてサーバでも動くJavaScript
- 第31回 新ブラウザ戦争はon fireだがJavaScriptはoffのナゾ
- 第32回 Google App EngineはAjaxへのハードルを下げるか?
- 最終回 Pure JavaScriptの動画再生やRPGも好きでした
| 古くて新しいAjaxの真実を見極める 「Webインターフェイスの新しい手法」「画期的なWebアプリケーションの仕組み」であるとして開発者たちの人気を集めるAjaxとは何なのか、その真実を見極めてみよう 最終更新 2005/8/2
|
||
TechTargetジャパン
- 家電のUIになるブラウザ (2012/2/3)
未来の家電はインターネットに接続でき、ブラウザが内蔵されてくる。家電にブラウザが載ったらどうなるか? 未来のホームネットワークを想像しよう - 「汎用のUI技術」として広がるHTML5 (2012/2/2)
すさまじい勢いで成長しているHTML5を中心としたオープンなWebプラットフォーム。HTML5やAPI、Webブラウザのアップデート情報をお伝えする - ビヨンド・クールジャパン!? (2012/1/27)
コンテンツという文化力と、ものづくりという技術力を掛け合わせる。両方を国内に持ち合わせている国は多くない。チャンスなのだ - Qt5で10億人ユーザーへ、OSSコミュニティ化で健在に (2012/1/20)
ノキアから売却されてQtはどうなったのか? 弱体化してしまうのではとの心配をよそにダウンロード数は飛躍的に伸びている
|
|


