先日、とある案件で、背景画像をスライドさせて切り替える必要が発生しました。そこでそれを可能にするjQueryプラグインを探していたところ、大変使い勝手の良いjQueryプラグインを発見したのでご紹介させていただきます。
jQuery.BgSwitcher
「jQuery.BgSwitcher」は背景画像を簡単に切り替えられるjQueryプラグインです。使い方も設定方法も簡単で、動作も軽いのでお勧めです。
背景画像を全画面表示で切り替えるDEMOを用意したので、動作をご確認ください。
DEMO(当サイトのTOP)
DEMO(デフォルト)
DEMO(カスタマイズ)
ダウンロード
jQuery.BgSwitcherのサイトからjquery.bgswitcher.jsをダウンロードすることができます。
使い方(デフォルト設定)
<div class="bg-slider"> <h1 class="bg-slider__title">BGSWITCHER DEMO PAGE</h1> </div>
.bg-slider { width: 100vw; height: 100vh; background-position:center center; background-size: cover; display: flex; align-items: center; justify-content: center; } .bg-slider__title{ color: #fff; font-size: 48px; line-height: 1.5; font-weight: bold; text-align:center; text-shadow: 1px 1px 1px #000; }
<script src="//ajax.googleapis.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script> <script src="js/jquery.bgswitcher.js"></script> <script> jQuery(function($) { $('.bg-slider').bgSwitcher({ images: ['img/bg1.jpg','img/bg2.jpg','img/bg3.jpg'], // 切り替える背景画像を指定 }); }); </script>
上記のようにjQuery本体(上記の例ではGoogleのCDNを利用しています)とjQuery.BgSwitcherのサイトでダウンロードしたjquery.bgswitcher.jsを必ず読み込んでください。
DEMO(デフォルト)
使い方(カスタマイズ)
htmlとcssは上記と同じです。
<script src="//ajax.googleapis.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script> <script src="js/jquery.bgswitcher.js"></script> <script> jQuery(function($) { $('.bg-slider').bgSwitcher({ images: ['img/bg1.jpg','img/bg2.jpg','img/bg3.jpg'], // 切替背景画像を指定 interval: 3000, // 背景画像を切り替える間隔を指定 3000=3秒 loop: true, // 切り替えを繰り返すか指定 true=繰り返す false=繰り返さない shuffle: true, // 背景画像の順番をシャッフルするか指定 true=する false=しない effect: "blind", // エフェクトの種類をfade,blind,clip,slide,drop,hideから指定 duration: 500, // エフェクトの時間を指定します。 easing: "swing" // エフェクトのイージングをlinear,swingから指定 }); }); </script>
上記は背景画像の切り替え時間をデフォルトよりも2秒短くして、画像の切り替え順をシャッフルにしています。またエフェクトの種類を「blind」に変更し、エフェクトの効果時間を0.5秒短くしています。その他のカスタマイズ方法に関しては下記の表をご確認ください。
DEMO(カスタマイズ)
設定
キー | 初期値 | 説明 |
---|---|---|
images | [] | 切り替える背景画像を配列で指定 |
interval | 5000 | 切り替えの間隔 |
start | true | $.fn.bgswitcher(config) をコールした時に切り替えを開始する |
loop | true | 切り替えをループする |
shuffle | false | 背景画像の順番をシャッフルする |
effect | fade | エフェクトの種類 |
duration | 1000 | エフェクトの時間 |
easing | swing | エフェクトのイージング |
今回は画面領域最大で背景画像を切り替える例を紹介しましたが、width: 980px; height: 400px;などと設定して動かすこともできます。
表にある要素は固定で、裏で背景画像をスライドさせいたときなどには、この「jQuery.BgSwitcher」を使用することをお勧めいたします。