以下是一个简单的 JavaScript 手写轮播图示例:

HTML 代码:

<div class="slider">
  <ul class="slides">
    <li><img src="image1.jpg"></li>
    <li><img src="image2.jpg"></li>
    <li><img src="image3.jpg"></li>
  </ul>
</div>

CSS 代码:

.slider {
  position: relative;
  overflow: hidden;
  width: 600px;
  height: 400px;
}

.slides {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  list-style: none;
  margin: 0;
  padding: 0;
}

.slides li {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
}

.slides li.active {
  opacity: 1;
}

JavaScript 代码:

var slides = document.querySelectorAll('.slides li');
var currentSlide = 0;
var slideInterval = setInterval(nextSlide, 2000);

function nextSlide() {
  slides[currentSlide].className = ' ';
  currentSlide = (currentSlide + 1) % slides.length;
  slides[currentSlide].className = 'active';
}

首先,我们通过 querySelectorAll 方法获取轮播图中所有的幻灯片元素,并将它们存储在一个变量 slides 中。然后,我们定义了一个变量 currentSlide,用于追踪当前显示的幻灯片的索引。接下来,我们设置了一个定时器 slideInterval,每隔 2 秒钟就会调用 nextSlide 函数。

nextSlide 函数的作用是将当前幻灯片的 className 属性设置为空字符串,然后将 currentSlide 索引增加 1,如果 currentSlide 索引超过了 slides 数组的长度,就将它重新设置为 0。最后,我们将下一张幻灯片的 className 属性设置为 active,这样它就会显示在轮播图中。在 CSS 中,我们使用 opacity 属性来控制幻灯片的淡入淡出效果。

这个示例只是一个基本的轮播图,还可以根据需要进行修改和扩展。例如,我们可以添加一个控制按钮,让用户可以手动切换幻灯片;我们也可以添加过渡效果,让幻灯片更加流畅地切换

js手写轮播图

原文地址: https://www.cveoy.top/t/topic/egzE 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录