画像のアップロードに便利なサムネイル表示機能の組み込み
尾藤 正人 [著] 2006/04/28 00:00

サンプルファイル 12.22 KB
1 2 →

はじめに

 ブロードバンドの普及、ストレージデバイスの大容量化に伴い、最近のWebサイトでは画像ファイルのような大容量のメディアを扱う機会が多くなってきました。しかし、Webサイトで画像のアップロードに対応するときに、従来のようにファイル名を指定する方法だと、アップロードをする側はどのファイルがどんな画像かを把握する必要があり、簡単に画像ファイルをアップロードすることができません。

 筆者が開発を担当している「フォト蔵」という写真共有サイトでは、上記の問題を解決するための画像サムネイル表示ライブラリを作成して、使用しています。 画像サムネイル表示ライブラリを使用することで、画像ファイルをアップロードする前にブラウザ上で画像のサムネイルを表示させることができます。

 セキュリティ機能の関係上、動作可能WebブラウザはIE限定になってしまいますが、IEは日本および世界におけるブラウザ市場でもトップシェアを誇っており、IEのみでも対応することで格段に操作性が向上します。ぜひ、本ライブラリを皆さんのWebサイトにも導入してみてください。

対象読者

 Webサイトを構築している方。基本的なHTML、JavaScriptが書ける方を対象としています。 画像サムネイル表示ライブラリはJavaScriptのみで動作するので、サーバ側言語はなんでも構いません。

動作環境

 動作可能なブラウザはIEのみ。Mozilla、Operaでは動作しません。

 また、画像サムネイル表示ライブラリではprototype.jsを使用しています。prototype.jsはWeb 2.0を支える重要なライブラリのひとつですので、ぜひこの機会に導入されることをお勧めします。

画像サムネイル表示ライブラリの使い方

 まず始めに、画像サムネイル表示ライブラリの使い方を説明します。

 下記に画像サムネイル表示ライブラリを使用するための最低限のHTMLを示します。

1 <script type="text/javascript" src="prototype.js"></script>
2 <script type="text/javascript" src="ImageThumbnail.js"></script>
3 <input type="file" id="photo">
4 <img src="empty.gif" id="thumbnail" width="80" height="0">
5 <script type="text/javascript">
6 <!--
7 new Image.Thumbnail('thumbnail', 'photo');
8 //-->
9 </script>
編集部注
 ソースコードの左側にある数字は行番号です(以下同)。

 1、2行目でprototype.js、画像サムネイル表示ライブラリの読み込みを行っています。

 3行目はファイル選択するためのinputタグ、4行目はサムネイルを表示するimgタグです。imgタグのwidth属性でサムネイルの最大サイズを指定しています。「empty.gif」は1x1の大きさの画像です。ここには皆さんの好みでサムネイル用の画像を表示してもよいでしょう。

 6~9行目で画像サムネイル表示ライブラリの呼び出しを行っています。Image.Thumbnailはprototype.jsの機能を用いてクラスとして定義されており、newすることで使用できるようになっています。第1引数にimgタグのidを、第2引数にinputタグのidを指定しています。


1 2
→
INDEX
prototype.jsを使った画像サムネイルの表示ライブラリ
Page1
はじめに
対象読者
動作環境
画像サムネイル表示ライブラリの使い方
画像サムネイル表示ライブラリの詳細
まとめ
プロフィール
尾藤 正人 ビトウ マサト

大学時代にVine SPARCの開発に参加。就職後2003年度未踏ユースに採択される。その後語学留学のため半年程渡米。帰国後はウノウ(株)の最高技術責任者として写真共有サイトフォト蔵の開発に従事。ブログ: ベイエリア情報局


注目の求人情報
システムエンジニア/IT事業拡大中のベンチャー企業
Web・オープン系システムの設計・開発 開発・テスト・保守業務。使用言語はJava等。...
生産管理・工程設計/ヒューネックス株式会社
■ゲームの企画・仕様を制作し、スタッフの進捗管理を行います。 ■コストを意識して、ライン全体の進...
コンサルタント/ウルシステムズ株式会社
・システムの要件定義と業務モデルをもとに個々のシステムのアーキテクチャを設計し、基幹業務システム...

(最新日付順)
名前(ゲストの方もコメントをどうぞ):*
アイコン:
なし

内容(テキストのみ1200文字まで):*

投稿規定に同意して

スポンサーサイト

この記事のトラックバックURL: