【旧刊】WordPressテーマ制作のみを取り扱った別冊電子書籍がAmazon Unlimitedでお楽しみ頂けます!!
Amazon Unlimited内で 田中勇輔 で検索してください。

☓ 閉じる

17Jul2011

web知識ゼロでもできる「Thickboxの導入方法」

howto本出すなら無駄にコンサル用語並べんな! by"ty"
 
前編 「オーバーレイ表示機能についてのアレコレ・・・」 

オーバーレイ表示に関する記事の続きです。

オーバーレイ表示の説明をした前回に続き、どうせならweb知識ゼロでもわかるHow toを書こうと思いたったのが今回のテーマです。
 
 
webページ制作と縁のないバリバリの営業マンが取引先で

「君、若いから聞いてみよう。 うちのサイトの画像をかっこ良く拡大したいんだけど、どうやるかわかる?」

というムチャブリをされた時には、是非ご活用くださいませ。
 
※当然ですが、今回の記事を参考にしてページを改良できてもサーバーにアップロードできなければ意味はありません。
サイトのアップロード?? サーバーの管理人?? 状態の依頼人でしたら、静かに見放してあげましょう。。
上の「営業マンが~」の話は半分冗談で、初心者がサイト制作をする場合、ページを改変した本人がサーバーにアップできる状態でないと、何らかのトラブルが起きる可能性があるためオススメできません。

 
 
 
オーバーレイ表示の無料スクリプトは多くありますが、今回使用するのは僕のサイトでも使っている「Thickbox」です。
 
今回説明する方法は「簡潔」を目的としている為、(汎用性の高いjquery.jsをthickboxフォルダ内に保存するなど)大きな目でみると非合理的な部分があります。
この記事を参考にご自分なりのカスタマイズをして頂けたら、一気にhtmlへの理解が深まると思います!

 
今回は以下の状況を仮定して説明をしていきます。

・「ページ」に「画像A」が配置されている。 画像をクリックしても何もおきない。

「ページ」に配置された「画像A」をクリックすると、「画像Aの拡大画像」がオーバーレイ表示される、という状態がゴールです。
 
 
 

もくじ

 
1, 画像Aに拡大画像へのリンクを貼る
2, Thickboxによるオーバーレイ表示のしくみ 
3, 下準備 (スクリプトのダウンロード&設置)
4, ページ内コードの書き換え
 
 
 
 

画像Aに拡大画像へのリンクを貼る

 
ここでは最も簡単な画像拡大の方法、「画像Aに拡大画像へのリンクを貼る」方法を説明します。
  

まず拡大したい「画像A」のソースを見てみます。
 
ソースコードのなかに

という部分があると思います。
 
 
これが「画像A」を表示させる為のコードです。
 
 
そして拡大画像を表示させたい時は、この「画像A」に「画像Aの拡大画像」へのリンクを貼ります。
 
リンクを貼るには、リンクさせたい部分を

画像

で囲みます。
 

↑これで「画像Aをクリックすると、画像Aの拡大画像へ移動する」という状態が実現できました。
 
 
 
 

Thickboxによるオーバーレイ表示のしくみ

 

Thickboxでは、リンク先の画像(またはHTMLページ)をオーバーレイ表示で現在のページ上に表示させます。
 
上の説明ですでに「画像Aに拡大画像のリンクを貼る」作業を終えている為、そのリンクにThickboxを設定してやればOKです!
 
 
Thickboxを有効にする為に必要な作業はたったの3つ。

1. Thickbox関連のスクリプトが書かれたファイルをサイトのどこかに設置
2. Thickboxを使用したいページで、1で準備したスクリプトを外部ファイルとして読み込む
3. オーバーレイ表示をさせたいリンク(<a>タグ)内に 「class=”thickbox”」 と記述する

本当にたったのこれだけですw
 
 
 
 
 

下準備 (スクリプトのダウンロード)

 
まずはThickboxの関連ファイルをダウンロードします。
 
↓公式サイトはこちら
thickbox公式サイト
 
2011.7月現在では、上から2番目のグレーのボックス内にて詳細ファイルへのリンクが貼られています。
 
一応以下からも各々にリンクを貼ります^^
リンク先を表示したら、「名前をつけて保存」で以下の名前で保存をしてください。
 
thickbox.js
thickbox.css
loadingAnimation.gif (ページではなくgif画像を保存してください)
jquery.js
 
 
4つのファイルをダウンロードしたら、全てをサーバーの任意の場所にアップロードします。
 
が、、、
 
その前に、軽くサイトの構造についての説明を致します。
 
 
一般的にはサイトの管理をしやすくする目的で「一連のファイル群を一つのフォルダに格納」します。
 
みなさんのパソコンと同様ですね。 誰しもフォルダ分けをしてファイルを整理していると思います。
 
そして、パソコンと同様にサイトのファイル・フォルダ名も「自己流」で構いません。 怖がらずに素敵な名前を付けてください^^
 
 
・・・今回は「thickbox」という名前のフォルダ(名前普通っ!?) に先の4ファイルを入れてアップします。
 
 
 
重要な点がひとつ
 
thickbox.js を開いて、8行目付近を見て下さい。

var tb_pathToImage = "images/loadingAnimation.gif";

 
という行があり、これは先ほど保存した「loadingAnimation.gif」を参照するコードです。
 
これを
 

var tb_pathToImage = "loadingAnimation.gif";

 
に書き換えて保存して下さい。
 
 
理由は、最初のコードでは自分(thickbox.js)のいるフォルダの「images」フォルダの「loadingAnimation.gif」を参照しているからです。今回は自分(thickbox.js)と同じフォルダ内に「loadingAnimation.gif」を保存しましたので、これは間違いになります。よって【「images」フォルダの】という部分を削除しました。
 
 
 
 
 
 
 

ページ内コードの書き換え

 
全ての準備が終わりましたので、ついに本命のページでの作業に入ります!!
 
 
ます、アップしたthickbox関連ファイルへの参照リンクを貼り、外部ファイルとして読み込みます。
 
ページソースの上の方を見ると <head> というタグがあります。
 
そして少し離れた下の方で </head>という終了タグがあります。
 
 
この<head>で囲まれた部分には、そのページの重要な情報が書かれてあり、外部ファイルの参照もここで行います。
 
 
thickboxを動かす為には、初めにjquery.jsを読み込みます。
 

 

 
上を参考に、実際にアップした場所のurlを書いてください。
 
 
次に以下の2ファイルを参照します。
 

 

 
 
 
この3つで設置した外部ファイルの読み込みは終了です。
(「loadingAnimation.gif」は「thickbox.js」内から参照をするので、ここでは使いません。)
 
 
最後に、オーバーレイ表示したい画像リンクにコードを書き込みます。
 

すごーく昔に、「画像A」に「画像Aの拡大画像」へのリンクを貼りました。
 

 
これに 「 class=”thickbox” 」というコードを追加します。
 

 
 
 
はい!おしまい!
 
 
 
ページを保存して、アップロード。 動作確認をしてみてください。
 
 
 
 
 
もし動かなかった場合は、下記のエラーを疑いましょう。
 
【オーバーレイ表示が一切動作しない】

・ページのヘッド内の外部ファイルへのリンクが間違えている。
・拡大画像へのリンク<a>タグ内の「 class=”thickbox” 」の記述ミス
 
【オーバーレイ表示は動くが、画像がきちんと表示されない】

・拡大画像がアップロードされていない
・拡大画像へのリンクが間違えている
 
 
 
 
それでもダメな場合。。

諦める。
 or 
tyのtwitterにつぶやいてみる
 or 
もっと優秀な人が書いた記事を参考にする
 
これをお試しください 笑

 
 
 
(7/18:「このブログで使っているwordpressプラグインとの兼ね合いでサンプルコードの一部に意図しない文字列が表示されている問題」を修正しました。)

関連記事