jQuery クロスフェードで切り替わるシンプルな画像スライドショー
シンプルなスライドショーに使うならおすすめです。 ※横幅固定なのでレスポンシブには対応してません。
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
#slide {
width: 640px;
height: 300px;
margin: 0 auto;
position: relative;
}
#slide img {
position: absolute;
left: 0;
top: 0;
}
</style>
</head>
<body>
<div id="slide">
<ul>
<li><img src="./images/image1.jpg" alt="" width="640" height="420" /></li>
<li>
<a href=""><img src="./images/image2.jpg" alt="" width="640" height="420" /></a>
</li>
<li>
<a href=""><img src="./images/image3.jpg" alt="" width="640" height="420" /></a>
</li>
<li>
<a href=""><img src="./images/image4.jpg" alt="" width="640" height="420" /></a>
</li>
<li>
<a href=""><img src="./images/image5.jpg" alt="" width="640" height="420" /></a>
</li>
</ul>
</div>
<script src="http://code.jquery.com/jquery-2.2.0.min.js"></script>
<script>
$(function() {
// 設定
var $width = 640; // 横幅
var $height = 420; // 高さ
var $interval = 5000; // 切り替わりの間隔(ミリ秒)
var $fade_speed = 1500; // フェード処理の早さ(ミリ秒)
$("#slide ul li").css({
"position": "relative",
"overflow": "hidden",
"width": $width,
"height": $height
});
$("#slide ul li").hide().css({
"position": "absolute",
"top": 0,
"left": 0
});
$("#slide ul li:first").addClass("active").show();
setInterval(function() {
var $active = $("#slide ul li.active");
var $next = $active.next("li").length ? $active.next("li") : $("#slide ul li:first");
$active.fadeOut($fade_speed).removeClass("active");
$next.fadeIn($fade_speed).addClass("active");
}, $interval);
});
</script>
</body>
</html>