当前位置:首页 > jquery

轮播图 jquery

2026-03-17 15:45:51jquery

轮播图 jquery

轮播图实现方法(jQuery)

基础HTML结构

<div class="slider">
  <div class="slides">
    <div class="slide active"><img src="image1.jpg"></div>
    <div class="slide"><img src="image2.jpg"></div>
    <div class="slide"><img src="image3.jpg"></div>
  </div>
  <button class="prev">❮</button>
  <button class="next">❯</button>
  <div class="dots-container"></div>
</div>

CSS样式设置

.slider {
  position: relative;
  width: 800px;
  height: 400px;
  overflow: hidden;
}
.slides {
  display: flex;
  width: 300%;
  transition: transform 0.5s ease;
}
.slide {
  width: 33.33%;
}
.slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.prev, .next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  z-index: 10;
}
.prev { left: 10px; }
.next { right: 10px; }
.dots-container {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
}
.dot {
  display: inline-block;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #ccc;
  margin: 0 5px;
  cursor: pointer;
}
.dot.active {
  background: #333;
}

jQuery核心功能

$(document).ready(function() {
  // 初始化导航点
  $('.slide').each(function(index) {
    $('.dots-container').append('<div class="dot" data-index="'+index+'"></div>');
  });
  $('.dot:first').addClass('active');

  // 切换幻灯片函数
  function goToSlide(index) {
    $('.slides').css('transform', 'translateX(-'+(index*33.33)+'%)');
    $('.slide').removeClass('active');
    $('.slide').eq(index).addClass('active');
    $('.dot').removeClass('active');
    $('.dot').eq(index).addClass('active');
    currentIndex = index;
  }

  // 自动轮播设置
  let currentIndex = 0;
  let slideCount = $('.slide').length;
  let autoSlide = setInterval(function() {
    currentIndex = (currentIndex + 1) % slideCount;
    goToSlide(currentIndex);
  }, 3000);

  // 上一张/下一张按钮
  $('.prev').click(function() {
    clearInterval(autoSlide);
    currentIndex = (currentIndex - 1 + slideCount) % slideCount;
    goToSlide(currentIndex);
    autoSlide = setInterval(function() {
      currentIndex = (currentIndex + 1) % slideCount;
      goToSlide(currentIndex);
    }, 3000);
  });

  $('.next').click(function() {
    clearInterval(autoSlide);
    currentIndex = (currentIndex + 1) % slideCount;
    goToSlide(currentIndex);
    autoSlide = setInterval(function() {
      currentIndex = (currentIndex + 1) % slideCount;
      goToSlide(currentIndex);
    }, 3000);
  });

  // 点击导航点切换
  $('.dot').click(function() {
    clearInterval(autoSlide);
    let dotIndex = $(this).data('index');
    goToSlide(dotIndex);
    autoSlide = setInterval(function() {
      currentIndex = (currentIndex + 1) % slideCount;
      goToSlide(currentIndex);
    }, 3000);
  });
});

扩展功能选项

  1. 添加淡入淡出效果:将CSS中的transition改为opacity动画,jQuery中使用fadeIn()/fadeOut()
  2. 响应式设计:通过媒体查询调整轮播图尺寸
  3. 触摸滑动支持:引入hammer.js库添加触摸事件
  4. 无限循环优化:克隆首尾幻灯片实现无缝滚动

注意事项

  1. 确保在HTML中正确引入jQuery库
  2. 图片路径需要根据实际情况调整
  3. 轮播间隔时间(3000ms)可根据需求修改
  4. 对于大量图片建议添加懒加载功能

轮播图 jquery

标签: 轮播图jquery
分享给朋友:

相关文章

jquery 菜鸟

jquery 菜鸟

以下是针对 jQuery 初学者的基础指南,涵盖核心概念和常用操作: jQuery 简介 jQuery 是一个快速、轻量级的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和…

jquery之家

jquery之家

jQuery之家资源推荐 jQuery之家(通常指提供jQuery相关资源的网站或社区)是开发者获取插件、教程和代码示例的重要平台。以下是几个与jQuery相关的优质资源网站: 1. jQuery官…

jquery点击

jquery点击

jQuery 点击事件绑定方法 使用 jQuery 绑定点击事件可以通过多种方式实现,以下是几种常见的方法: click() 方法绑定 $("#elementId").click(function…

jquery 选择

jquery 选择

jQuery 选择器基础 jQuery 选择器基于 CSS 选择器语法,用于快速定位和操作 DOM 元素。核心语法为 $() 或 jQuery(),括号内传入选择器表达式。 // 选择所有 <…

jquery判断

jquery判断

jQuery 判断元素存在与属性方法 使用 jQuery 判断元素是否存在可通过检查选择器返回的 jQuery 对象长度: if ($('#elementId').length > 0) {…

jquery css

jquery css

jQuery 操作 CSS 的方法 jQuery 提供了多种方法来操作元素的 CSS 样式,包括获取、设置、添加或移除样式。以下是常用的方法: 获取 CSS 属性值 使用 .css() 方法获取元素…