
ウィンドウ全体に画像を表示させる jQueryプラグイン MaxImage 2を試してみた
最最近は、モニターの解像度や ppiが高くなり写真や動画をよりキレイに表示させることが可能になりました。写真や動画をページの背景全体に使うウェブサイトなども数多く見られます。それを可能にするのが jQueryプラグインの MaxImage 2です。
MaxImage 2の使い方
GitHub内にある MaxImageのページから ファイルをダウンロードします。ZIPファイルを解凍して jquery.maximage.css、jquery.maximage.js、jquery.cycle.all.jsをサーバーにアップロードします。
jquery.cycle.all.jsは、複数の画像をスライドショー形式で表示させるプラグインです。jQuery Cycle Pluginの詳細はこちらを参照してください。
<link href="css/jquery.maximage.css" rel="stylesheet"> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> <script type="text/javascript" src="js/jquery.maximage.min.js"></script> <script type="text/javascript" src="js/jquery.cycle.all.js"></script>
HTMLの head要素内に jQueryのライブラリ、MaxImage 2の CSSファイル、Javascrtipファイル、そして jQuery Cycleの JavaScriptファイルを指定します。
$(function(){ var $maxImage = $('#maximage'); //Max Image 2で使う画像をあらかじめ非表示にする $maxImage.hide(); $maxImage.maximage({ //次の画像が表示されるまでの間隔 ミリ秒単位 cycleOptions: {timeout: 10000}, //最初の画像が読み込まれた時 onFirstImageLoaded: function(){ //最初の画像をフェードインで表示させる $maxImage.fadeIn(1000); } }); });
今回は、背景として使う複数の画像を一定の間隔で切り替えながら表示させたいので cycleOptionsに timeoutを指定します。timeoutは次の画像が表示されるまでの間隔をミリ秒単位で指定します。onFirstImageLoadedは、最初の画像が読み込まれた時に実行するコールバック関数で任意の処理を指定します。
div.mc-image { -webkit-transition: opacity 1s ease-in-out; -moz-transition: opacity 1s ease-in-out; -o-transition: opacity 1s ease-in-out; transition: opacity 1s ease-in-out; ・ ・ ・
画像のフェードのスピードは、jquery.maximage.css内の transitionプロパティで指定されているので、1sを変更すればフェードのスピードを変えることができます。ちなみに1sだと1秒、ミリ秒で指定したい場合は msを使用します。
Max Image 2のデモ
複数の画像をウィンドウ内の背景画像として10秒間隔で切り替えます。