ホーム » ビジネスブログ » Ajax (システム開発) »

「つくるぶ特集 Flash|Ajax ベストサイトセレクション20」:「Apple - iPod + iTunes」はどう実装されているか

2007年8月28日

「つくるぶ特集 Flash|Ajax ベストサイトセレクション20」:「Apple - iPod + iTunes」はどう実装されているか

投稿者 竹村

SEの竹村です。

私は先日から「つくるぶ -デベロッパー応援プロジェクト」(運営:株式会社リクルートメディアテクノロジーラボ)にてJavaScriptまとめノートを担当させてもらっていますが、同サイトの「Flash | Ajax ベストサイトセレクション20」という企画に参加させていただきました。

Flash | Ajax ベストサイトセレクション20
http://www.tkrb.jp/modules/feature0/index.php?id=12
flash_ajax_20_vol_1.jpg

この企画は、たとえば「ナビゲーションがカッコいいサイトは?」というお題に対してFlashとAjaxでそれぞれマッチするサイトを紹介し、競い合うというものでした。

つくるぶのポリシーを考慮して、「実際にどのように作るのか」がある程度見えていた方がよいのでは?
という話もあったのですが、このサイト上では対談という形式で、プログラム的な話はしないことになりました。

そこで、これから数回に分けて、紹介したサイトの技術的な面についてフォローをしていこうと思います。
当然、JavaScript側しかやりません^^;
JavaScriptはソースコードがオープンにされているので、追っていくことが可能な点がメリットですね。


まず、第1回は「お題1>ナビゲーションがカッコいいサイト」で紹介した「Apple - iPod + iTunes」が、どのように実装されているのかを解き明かしていきます。

▼Apple - iPod + iTunes
http://www.apple.com/itunes/
flash_ajax_20_vol_1_2.jpg

このサイトでは、有名なCoverFlow(カバーフロー)インターフェイスを再現しています。
カテゴリの画像を横に並べて、それを囲むdiv内に横幅固定のスタイルを指定します。

<div id="pb-productbrowsercontainer" style="overflow: hidden;">
overflow: hiddenのスタイルシートは、はみ出た部分を非表示でクリッピングしています。 また、hiddenを指定することで、ブラウザのスクロールバーを表示させないようにしています。


▼overflow - W3C (英語)
http://www.w3.org/TR/CSS21/visufx.html#propdef-overflow


その下のスライダーはscript.acluo.usのSliderクラスを使っており、バーをドラッグ・ドロップすると、それに応じてカテゴリ内の画像を移動させるイベントハンドラを呼び出すようにしています。
カテゴリ内の画像の移動は、style.left を変更することで実装されています。

また、スライダーのバー以外の箇所をクリックした時のイベントハンドラもセットされています。

▼スライダー - script.aculo.us (英語)
http://wiki.script.aculo.us/scriptaculous/show/Slider

◆生成の例◆

new Control.Slider('スライダーバーのID',
      'スライダー背景のID',
      {onSlide:バーをドラッグ中のイベントハンドラ,
      onChange:バーをドロップするか、背景クリック時のイベントハンドラ
      });
バーをドラッグのイベントハンドラ = function(value) {
 var x = ... ; // valueは 0?1 を返す
       // valueから何らかの変換をかける部分が ... で、結果を x とする
 $('画像を並べたのをまとめたdivのID').style.left = x + 'px';
};

関連リンク:
▼Control.Slider - スライダーコントロールを設定
http://javascriptist.net/ref_scriptaculous/control.slider.html

上記以外の{Option}部分について確認できます。


このような感じで、簡単ながら実装の一部の説明をしていきたいと思います。
次回は、下記の2つのお題について説明する予定です。

「お題2>見入ってしまうエフェクトのあるサイト」
「お題3>画面スペース無限大のサイト」

それでは次回もお楽しみに!

投稿者 竹村 : 2007年8月28日 09:00

カテゴリー: Ajax (システム開発)

タグ: Ajax , Apple , つくるぶ , JavaScript , script.acluo.us


Movable Type用高機能メールフォーム生成プラグイン A-Formの詳細へ
Movable Type用会員限定サイトプラグイン A-Memberの詳細へ
Movable Type用予約サイト構築プラグイン A-Reserveの詳細へ
ARK-Web×CSR(企業の社会的責任)

アークウェブの本

Zen Cartによるオンラインショップ構築・運用テクニック―オープンソース徹底活用

Zen Cartによるオンラインショップ構築・運用テクニック―オープンソース徹底活用

内容充実のZen Cart公式本(v1.3対応)がついに発表です。アークウェブのスタッフをはじめZen-Cart.JPの中心メンバーが共著で執筆しました。続きを読む

Movable Type プロフェッショナル・スタイル

Movable Type プロフェッショナル・スタイル

ビジネスサイト構築におけるCMSとしてのMTの活用方法について、豪華執筆陣による実践的MT本です。八木が共著で執筆しました。続きを読む

Web屋の本

Web屋の本

Web 2.0時代の企業サイトの構築・運用などの戦略を考える「Web屋の本」 (技術評論社)を、中野・安藤が執筆しました。続きを読む

新着はてブ

Loading

アーカイブ

応援しています

  • キッズ・セーバー
  • ソロモン・リリーフ ─ソロモン諸島を応援する有志による、震災復興支援プロジェクト─

    (終了しました)

RSS配信

 

サービスおよびソリューション一覧


最新情報・投稿をチェック


このページのトップに戻る

Photo by A is for Angie

Powered by Movable Type Pro 6.3.8