css 左右箭头 轮播代码
导读:今天我们来学习一下如何使用CSS实现左右箭头轮播效果。首先,我们需要准备两个箭头图片,一个是左箭头,一个是右箭头。然后我们就可以开始编写代码了。首先,我们需要定义一个container用来装载轮播图,并设置宽度和高度以及overflow:h...
今天我们来学习一下如何使用CSS实现左右箭头轮播效果。首先,我们需要准备两个箭头图片,一个是左箭头,一个是右箭头。然后我们就可以开始编写代码了。首先,我们需要定义一个container用来装载轮播图,并设置宽度和高度以及overflow:hidden属性。.container {
width: 1000px;
height: 500px;
overflow: hidden;
}
接下来,我们需要在container内创建ul和li来实现轮播。为了让轮播图片在一排显示,我们需要使uli设置float属性。再通过设置ul的总宽度来实现轮播图的排列。.container ul {
width: 3000px;
list-style: none;
margin: 0;
padding: 0;
}
.container li {
float: left;
width: 1000px;
height: 500px;
}
接下来就是实现轮播图的动画效果了。我们可以通过设置ul的left属性来实现轮播图的移动。为了实现左右箭头的功能,我们还需要为左箭头和右箭头添加点击事件。.container .left-arrow {
position: absolute;
top: 50%;
left: 20px;
width: 50px;
height: 50px;
background-image: url("left-arrow.png");
background-repeat: no-repeat;
background-size: cover;
transform: translateY(-50%);
cursor: pointer;
}
.container .right-arrow {
position: absolute;
top: 50%;
right: 20px;
width: 50px;
height: 50px;
background-image: url("right-arrow.png");
background-repeat: no-repeat;
background-size: cover;
transform: translateY(-50%);
cursor: pointer;
}
let ul = document.querySelector('.container ul');
let li = document.querySelectorAll('.container li');
let leftArrow = document.querySelector('.left-arrow');
let rightArrow = document.querySelector('.right-arrow');
let index = 0;
let len = li.length;
let interval = 2500;
let autoPlay = setInterval(() =>
{
move("right");
}
, interval);
function move(direction) {
if (direction === "left") {
index--;
if (index= len) {
index = 0;
}
}
ul.style.left = (-index * 1000) + "px";
}
leftArrow.addEventListener('click', () =>
{
move("left");
clearInterval(autoPlay);
autoPlay = setInterval(() =>
{
move("right");
}
, interval);
}
);
rightArrow.addEventListener('click', () =>
{
move("right");
clearInterval(autoPlay);
autoPlay = setInterval(() =>
{
move("right");
}
, interval);
}
);
通过以上代码,我们就可以实现一个简单的左右箭头轮播效果了,希望大家能够掌握这个技巧。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: css 左右箭头 轮播代码
本文地址: https://pptw.com/jishu/340168.html
