用jquery简单的实现京东轮播图效果## 标题
html部分
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div class="slider">
<ul>
<li>
<a href="#">
<img src="images/1.jpg" alt="">
<p>这是第1张图片的文字说明</p>
</a>
</li>
<li>
<a href="#">
<img src="images/2.jpg" alt="">
<p>这是第2张图片的文字说明</p>
</a>
</li>
<li>
<a href="#">
<img src="images/3.jpg" alt="">
<p>这是第3张图片的文字说明</p>
</a>
</li>
<li>
<a href="#">
<img src="images/4.jpg" alt="">
<p>这是第4张图片的文字说明</p>
</a>
</li>
<li>
<a href="#">
<img src="images/5.jpg" alt="">
<p>这是第5张图片的文字说明</p>
</a>
</li>
<li>
<a href="#">
<img src="images/6.jpg" alt="">
<p>这是第6张图片的文字说明</p>
</a>
</li>
<li>
<a href="#">
<img src="images/7.jpg" alt="">
<p>这是第7张图片的文字说明</p>
</a>
</li>
<li>
<a href="#">
<img src="images/8.jpg" alt="">
<p>这是第8张图片的文字说明</p>
</a>
</li>
</ul>
<!--箭头-->
<div class="arrow">
<span class="arrow-left"><</span>
<span class="arrow-right">></span>
</div>
</div>
</body>
</html>
css部分
<style>
* {
margin: 0;
padding: 0;
list-style: none;
}
img {
display: block;
}
.slider {
height: 340px;
width: 790px;
margin: 100px auto;
position: relative;
overflow: hidden;
}
.slider li {
position: absolute;
display: none;
}
.slider li:first-child {
display: block;
}
/*文字部分的样式*/
.slider li p {
position: absolute;
width: 100%;
padding: 10px 0;
text-indent: 2em;
background-color: rgba(0, 0, 0, .6);
bottom: 0;
left: 0;
font-size: 18px;
/*给文字设置位移到底部去*/
transform: translate3d(0, 100%, 0);
/*添加过渡*/
transition: all .8s;
}
/*当前展示li 下的文字样式*/
.slider li.current p {
/*文字位移到0的位置,正常显示*/
transform: translate3d(0, 0, 0);
}
.slider li a {
color: #fff;
}
.arrow {
display: none;
}
.slider:hover .arrow {
display: block;
}
.arrow-left,
.arrow-right {
font-family: "SimSun", "宋体";
width: 30px;
height: 60px;
background-color: rgba(0, 0, 0, 0.1);
position: absolute;
top: 50%;
margin-top: -30px;
cursor: pointer;
text-align: center;
line-height: 60px;
color: #fff;
font-weight: 700;
font-size: 30px;
}
.arrow-left:hover,
.arrow-right:hover {
background-color: rgba(0, 0, 0, .5);
}
.arrow-left {
left: 0;
}
.arrow-right {
right: 0;
}
</style>
js部分
<script src="../jquery-2.2.4.js"></script>
<script>
//1 定义一个索引,且设置地张图片为默认
var index = 0;
$('ul>li').eq(index).addClass('current').siblings().removeClass('current');
// 2右边按钮的点击
$('.arrow-right').click(function () {
index++;
// 判断图片是否超过最后一张,超过就重新给index赋值
if (index == $('ul>li').length) {
index = 0;
}
showimg();
});
// 左边按钮的实现
$('.arrow-left').click(function () {
index--;
if (index < 0) index = $('ul>li').length - 1;
showimg();
})
//封装一个函数,设置当前图片显示,其他隐藏
function showimg() {
$('ul>li').eq(index).addClass('current').focusin.siblings().removeClass('current').fadeOut();
}
// 实现自动轮播
var time = '';
// 鼠标移入停止轮播
$('.slider').mouseover(function () {
clearInterval(time)
})
// 鼠标移出,继续
$('.slider').mouseout(function () {
time = setInterval(function () {
$('.arrow-right').click()
}, 2000)
});
$('.slider').mouseout()
</script>