基本の画像スライダーを作る方法
基本の画像スライダーをHTML・CSS・JavaScriptだけで作る方法を紹介します。前へ・次へボタンをクリックして画像を切り替えられるシンプルな構成のため、初めてスライダーを実装する方でも仕組みを理解しやすいサンプルです。
JavaScriptで現在表示している画像を管理し、ボタン操作に応じてスライドを切り替えます。ライブラリを使用せずに実装しているため、画像枚数の追加やデザイン変更などのカスタマイズもしやすく、自分のサイトへ取り入れやすい構成になっています。
商品画像の切り替え、フォトギャラリー、メインビジュアルなど、さまざまな場面で利用できます。まずは基本的な画像スライダーの仕組みを理解したい方や、シンプルな実装から始めたい方におすすめです。
免責事項 本コードの利用により発生した損害について、当サイトは一切の責任を負いません。
デモ
このデモでは、「前へ」「次へ」ボタンをクリックすると画像を切り替えられます。基本的な画像スライダーの動作を確認できます。
コードをコピーして使おう!
<!DOCTYPE html>
<html lang="ja">
<head>
<!-- 文字コード -->
<meta charset="UTF-8">
<!-- スマホ表示に対応 -->
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- ページタイトル -->
<title>基本の画像スライダー</title>
<!-- CSSファイルを読み込み -->
<link rel="stylesheet" href="style.css">
</head>
<body>
<!-- 画像スライダー全体 -->
<div class="basic-image-slider_demo">
<!-- 画像表示エリア -->
<div class="basic-image-slider_box">
<!--
初期表示する画像
sample/images/ フォルダへ画像を配置し、
下記を「画像ファイル名」に変更してください。
例:
images/sample1.jpg
-->
<img
id="basic-image-slider-image"
class="basic-image-slider_image"
src="images/【ここに1枚目の画像ファイル名】"
alt="スライダー画像">
</div>
<!-- 操作ボタン -->
<div class="basic-image-slider_controls">
<!-- 前へボタン -->
<button
id="basic-image-slider-prev"
class="basic-image-slider_button"
type="button">
前へ
</button>
<!-- 次へボタン -->
<button
id="basic-image-slider-next"
class="basic-image-slider_button"
type="button">
次へ
</button>
</div>
</div>
<!-- JavaScriptファイルを読み込み -->
<script src="script.js"></script>
</body>
</html>
ファイル構成と設置方法
このサンプルは、HTML・CSS・JavaScriptの3ファイルで構成されています。HTMLでスライダーのレイアウトを作成し、CSSでデザインを設定し、JavaScriptで前へ・次へボタンによる画像の切り替えを行います。表示する画像は sample/images/ フォルダへ配置して利用します。
sample/
├── index.html
├── style.css
├── script.js
└── images/
├── 【ここに1枚目の画像】
├── 【ここに2枚目の画像】
└── 【ここに3枚目の画像】
sampleフォルダをそのまま配置し、ブラウザで sample/index.html を開くと動作を確認できます。
使用する画像は sample/images/ フォルダへ配置してください。初期表示する画像は index.html の img タグの src 属性で指定し、スライダーで切り替える画像は script.js の basicImageSliderImages 配列へ画像ファイル名を設定します。
スライダーの横幅や角丸、枠線、背景色、ボタンの色やサイズなどのデザインは style.css で変更できます。画像の切り替え処理は script.js にまとめられており、このサンプルには自動再生や切り替え間隔などの時間設定はありません。
コメント