<!DOCTYPE html>
<html lang="zh">
<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></title>
<style>
/* div img {
width: 300px;
height: 180px;
} */
#banner {
width: 1010px;
max-height: 455px;
border: 2px solid red;
position: relative;
}
img {
display: none;
}
.start {
display: block;
}
ul {
position: absolute;
right: 0;
bottom: 0;
}
li {
float: left;
margin-left: 40px;
color: white;
font-size: 30px;
/* 透明度 */
opacity: 0.5;
/* 让元素鼠标放置上为小手 */
cursor: pointer;
}
#banner .arrow {
position: absolute;
top: 35%;
color: yellow;
padding:0px 14px;
border-radius: 50%;
font-size: 50px;
z-index: 2;
display: none;
}
#banner .arrow_left {
left: 10px;
}
#banner .arrow_right {
right: 10px;
}
#banner:hover .arrow {
display: block;
}
#banner .arrow:hover {
background-color: rgba(0,0,0,0.2);
}
</style>
</head>
<body>
<div id="banner">
<img src="ad1.jpg" class="start">
<img src="ad2.jpg">
<img src="ad3.jpg">
<img src="ad4.jpg">
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
<a href="javascript:;" class="arrow arrow_left"><</a>
<a href="javascript:;" class="arrow arrow_right">></a>
</div>
</body>
</html>
<script src="jQuery-3.5.1.min.js"></script>
<script>
$("li").first().css("opacity", 1);
$(".arrow_left").click(function(){
var i = $("img:visible").index();
// 得知轮播图有几个
var imgLen = $("img").length;
// 计算上一个图片的下标(当前显示的图片下标-1)
if(i >= 1){
var prev = i-1;
}else{
var prev = 0;
}
if(i == 3){
prev = 0;
}
// 让所有图片暂时隐藏
$("img").hide();
$("li").css("opacity", 0.5);
if(prev<=imgLen){
$("img").eq(prev).show();
// 让指示点显示
$("li").eq(prev).css("opacity", 1);
}else{;
$(".start").show();
// 让指示点显示
$("li").first().css("opacity", 1);
}
});
$(".arrow_right").click(function(){
var i = $("img:visible").index();
// 得知轮播图有几个
var imgLen = $("img").length;
// 计算下一个图片的下标(当前显示的图片下标+1)
var next = i+1;
// 让所有图片暂时隐藏
$("img").hide();
$("li").css("opacity", 0.5);
// 判断:+1后不能超过总长度,10个元素,最后一个下标为9
if(next<imgLen){
$("img").eq(next).show();
// 让指示点显示
$("li").eq(next).css("opacity", 1);
}else{;
$(".start").show();
// 让指示点显示
$("li").first().css("opacity", 1);
}
// });
$("li").hover(
function() {
// 获取当前鼠标放置的li的下标
var i = $(this).index();
// 让对应的图片进行显示
$("img").hide();
$("img").eq(i).show();
// 去掉点的透明样式
$("li").eq(i).css("opacity", 1);
// 清除定时器
clearInterval(scrollImg);
},
function() {
// 获取当前鼠标放置的li的下标
var i = $(this).index();
// 增添透明样式
$("li").eq(i).css("opacity", 0.5);
// 定时器继续
scrollImg = setInterval(scrollImgFun, 2000);
}
);
function scrollImgFun() {
// 找到当前显示的图片的下标
var i = $("img:visible").index();
// 得知轮播图有几个
var imgLen = $("img").length;
// 计算下一个图片的下标(当前显示的图片下标+1)
var next = i+1;
// 让所有图片暂时隐藏
$("img").hide();
// 增添透明样式
$("li").css("opacity", 0.5);
// 判断:+1后不能超过总长度,10个元素,最后一个下标为9
if(next<imgLen){
$("img").eq(next).show();
// 让指示点显示
$("li").eq(next).css("opacity", 1);
}else{;
$(".start").show();
// 让指示点显示
$("li").first().css("opacity", 1);
}
}
scrollImg = setInterval(scrollImgFun, 2000);
</script>