下面是一个简单的带按钮的轮播图示例:

HTML部分:

<div class="slider">
  <div class="slider-container">
    <div class="slide"><img src="img/slide1.jpg"></div>
    <div class="slide"><img src="img/slide2.jpg"></div>
    <div class="slide"><img src="img/slide3.jpg"></div>
  </div>
  <div class="slider-buttons">
    <button class="prev">Prev</button>
    <button class="next">Next</button>
  </div>
</div>

CSS部分:

.slider {
  position: relative;
  width: 500px;
  height: 300px;
  overflow: hidden;
}

.slider-container {
  position: absolute;
  width: 1500px;
  height: 300px;
  left: 0;
  top: 0;
}

.slide {
  float: left;
  width: 500px;
  height: 300px;
}

.slider-buttons {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
}

.slider-buttons button {
  margin: 0 10px;
  padding: 8px 16px;
  background-color: #333;
  color: #fff;
  border: none;
  border-radius: 4px;
  cursor: pointer;
}

.slider-buttons button:hover {
  background-color: #555;
}

JavaScript部分:

$(document).ready(function() {
  var slider = $('.slider'),
      container = slider.find('.slider-container'),
      slides = container.find('.slide'),
      slideWidth = slides.eq(0).outerWidth(),
      slideCount = slides.length,
      currentSlide = 1,
      prevButton = slider.find('.prev'),
      nextButton = slider.find('.next');

  container.css('width', slideWidth * slideCount);

  prevButton.on('click', function() {
    if (currentSlide > 1) {
      currentSlide--;
      container.animate({ left: '+=' + slideWidth }, 500);
    }
  });

  nextButton.on('click', function() {
    if (currentSlide < slideCount) {
      currentSlide++;
      container.animate({ left: '-=' + slideWidth }, 500);
    }
  });
});

此示例中,图片的宽度为500px,轮播图容器的宽度为1500px,通过改变容器的left属性来实现轮播图的切换。prev按钮和next按钮分别绑定了click事件,在点击时判断当前轮播图的序号,然后执行相应的动画。


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

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