目次
簡単に背景画像をスライドできるページを作ってみたいけど
どうすればいいかなぁ?
お詫び🙇
以前のコードでは画像に余白ができることがわかりました。
そのためbodyのCSSを追加いたしました。
もし不具合がでたり、うまく動作しない場合はお問い合わせ付フォームからお問い合わせください。
個人情報が漏れることなどはございませんので気軽にお問い合わせください。
こんにちはうらしまです。
プログラミング学習中の私が今回jQuery のプラグインを紹介したいと思います。
今回は背景の画像を自動で切り替える「jQuery.BgSwitcher」をどこよりもわかりやすく紹介していきます。
「jQuery.BgSwitcher」とは背景画像を簡単に切り替えることができるプラグインです。
レスポンシブ対応のしているので、スマートフォンでサイト見たとき、サイトの見た目が崩れる心配がありません。
まずこの記事を読む前にデモ画面を確認してみてください
こちらがデモ画面です
Demo – jQuery.BgSwitcher
お知らせ
この記事の内容が少しでも役に立ったら、Twitterやブログなので拡散お願いいたします🙇♂️
拡散して頂けたら、一言添えていただけると小躍りします笑
jQuery.BgSwitcher作成までの流れ
- ファイルの準備
- コードの書き方
準備
まずフォルダに「index.html」ファイルと適当な画像3枚ほどを準備してください。
画像はO-DANという画像検索サイトからダウンロードしてきました。
素敵なフリー画像が多数あるので自分の好きな画像を見つけてください。

今回は画像を名前をわかりやすいように、1、2、3などに変更しました。
もちろん自分の好きな名前に変更可能です。

こんな感じで
次に
jQuery.BgSwitcher のサイトに飛んでください。
サイトに飛んだらダウンロードの下の jquery.bgswitche.jsの上で右クリックを押してください。
それから名前を付けて保存で先ほど作ったフォルダの中に入れてください

これで準備完了です。

コードの書き方
HTML
1 2 3 |
<div class="bg-switcher"> <h1 class="bg">BgSwitcher テスト</h1> </div> |
CSS
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
.bg-switcher{ width: 100%; height:1000px; background-position: center center; background-size: cover; display: flex; align-items: center; justify-content: center; } .bg{ color: white; font-size: 100px; font-weight: bold; text-align: center; } |
javascript
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script src="jquery.bgswitcher.js"></script> <script> jQuery(function($) { $('.bg-switcher').bgSwitcher({ images: ['1.jpg','2.jpg','3.jpg'], // 切り替え画像 Interval: 5000, //切り替えの間隔 1000=1秒 start: true, //$.fn.bgswitcher(config)をコールした時に切り替えを開始する loop: true, //切り替えをループする shuffle: false, //背景画像の順番をシャッフルする effect: "fade", //エフェクトの種類 "fade" "blind" "clip" "slide" "drop" "hide" duration: 1000, //エフェクトの時間 1000=1秒 easing: "swing", //エフェクトのイージング "swing" "linear" }); }); </script> |
エフェクトの種類を変えることよって画像の切り替わり方が変わります。
最終的にこんな感じにしてください

全ソースコード
下記のコードindex.htmlファイルにばちこんとコピペしてくださいね
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>jQuery.BgSwitcher</title> <style> body{ padding: 0px; margin: 0px; } .bg-switcher { width: 100vw; height: 1000px; background-position: center center; background-size: cover; display: flex; align-items: center; justify-content: center; overflow: hidden; } .bg { color: white; font-size: 100px; font-weight: bold; text-align: center; } </style> </head> <body> <div class="bg-switcher"> <h1 class="bg">BgSwitcher</h1> </div> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script src="jquery.bgswitcher.js"></script> <script> jQuery(function($) { $('.bg-switcher').bgSwitcher({ images: ['1.jpg','2.jpg','3.jpg'], // 切り替え画像 Interval: 5000, //切り替えの間隔 1000=1秒 start: true, //$.fn.bgswitcher(config)をコールした時に切り替えを開始する loop: true, //切り替えをループする shuffle: false, //背景画像の順番をシャッフルする effect: "fade", //エフェクトの種類 "fade" "blind" "clip" "slide" "drop" "hide" duration: 1000, //エフェクトの時間 1000=1秒 easing: "swing", //エフェクトのイージング "swing" "linear" }); }); </script> </body> </html> |
他にもオプションで様々なエフェクトが追加できるのでこちらをご確認ください。
jQuery.BgSwitcherのオプション一覧
オプション | 説明 |
interval | 背景画像を切り替える間隔を指定 |
loop |
切り替えを繰り返すか指定 |
shuffle | 背景画像の順番をシャッフルするか指定 true=する false=しない |
effect | エフェクトの種類を fade,blind,clip,slide,drop,hide から指定 |
duration | エフェクトの時間を指定します |
easing | エフェクトのイージングを linear,swing から指定 |
よくある質問
画像が表示されません
画像が表示されない場合は、画像のパスが間違っているか、画像名が間違っている可能性があります。
もう一度確認してみましょう。
以上で 「jQuery.BgSwitcher」 を実装することができます。
以上、背景画像をスライドショーできるプラグイン「jQuery.BgSwitcher」の紹介でした。
上記の方法でできなかったと言う方はコメントを遠慮せず送ってください
参考書籍
関連記事
背景画面を動画に変更できるjqueryのプラグイン「VIDE」を下記の記事で紹介しています。
jQueryプラグイン「VIDE」
開発環境
検索エンジン google chrome
テキストエディタ vscode使用
どこよりも分かりやすかったです!インターン先の課題で躓いていたのでとても助かりました。これからもブログ読ませていただきます。ありがとうございました。
R様
コメントありがとうございます
当ブログがお役になってとても嬉しいです、今後ともよろしくお願いいたします。