jQueryを使ってタブメニュープラグインを作る
Posted by poundhound on
前回はjQueryを使ってタブメニューのインターフェイスを作成しましたが、汎用的に利用するにはプラグイン化すると便利です。プラグイン化するとプラグインを呼び出す際のオプションを設定出来るので、liやdivのクラス名を変更した際にも対応出来ます。
今回は前回のコードを参考にプラグイン化して行きます。
前回はjQueryを使ってタブメニューのインターフェイスを作成しましたが、汎用的に利用するにはプラグイン化すると便利です。プラグイン化するとプラグインを呼び出す際のオプションを設定出来るので、liやdivのクラス名を変更した際にも対応出来ます。
今回は前回のコードを参考にプラグイン化して行きます。
ウェブサイトで多くの要素を省スペースで表示するのに役立つタブメニューは汎用的に使えて実用的なUIです。このタブメニューのインターフェイスはjQueryを利用すると簡単に実装出来ます。
今回はタブメニューを実装するまでを解説していきます。また、1ページ内で複数のタブを実装するにはプラグインの形式にすると便利ですので、最終的にプラグインの形にするまで2回のエントリーに分けて解説しようと思います。
n個のバナー画像の中から任意の2個のバナーを表示させるjQueryプラグインを考えてみました。
仕様としては、HTML上には全てのバナーを非表示で記述し、任意の2個を表示、バナーを追加しても対応出来る(3個でも4個でも10個でも任意の2個のバナーを表示)と言う仕様です。
TwitterやFacebookを初めとして各種ソーシャルサービス(SNS)が公式でコンテンツをシェアする手段を公開しています。自分のブログにこれらのシェアボタンを利用している人は多いと思いますが、TwitterやFacebookなどは公式のソースを利用するとボタン画像が公式のものになってしまいます。今回はオリジナルシェアボタン画像を使いたい場合に利用出来るスクリプトをjQueryのプラグインとして用意しました。
対応SNS/SBS:Twitter, Facebook, はてなブックマーク, Yahoo!ブックマーク, Googleブックマーク, Livedoorブックマーク, Del.icio.us, Evernote
また、ブログの場合は大体がURLやtitleはそれぞれテンプレートタグが用意されていると思います。(例:MTならばmt:EntryPermalink / mt:EntryTitle)今回は静的ページでも利用出来るようにJavascriptのdocument.URL、document.titleでURLとtitleを取得しています。
追記 2011.06.07
Twitterの試用変更のため以前配布していたものではツイート機能が無効になっていました。修正しましたのでもし利用されている方がいましたら再度ダウンロードしてご利用ください。
商品リストなんかを掲載する場合、ボックスを3カラム/4カラムにレイアウトするケースが多々あると思います。今は3商品しか掲載しないけれど、そのうち4、5、6...と増えていってもレイアウトを維持するためには少々工夫する必要があると思います。
当然のごとくボックス間にはマージンが存在していて、カラムの最後のボックスのマージンが邪魔...とは言えマージンを0にしたクラスを付加するのもメンテナンス性が落ちるため出来れば避けたい。
ul/li要素でマークアップしてpositionを利用する方法やネガティブマージンを利用する方法があると思います。今回はul/li要素を利用せずにシンプルにdivのみを利用した方法を紹介します。マークアップは次の通り。