当前位置:首页 > jquery

jquery轮播图代码

2026-02-03 18:15:01jquery

以下是一个基于jQuery实现的简单轮播图代码示例,包含自动播放和手动切换功能:

HTML结构

<div class="slider-container">
  <div class="slider">
    <img src="image1.jpg" class="slide active">
    <img src="image2.jpg" class="slide">
    <img src="image3.jpg" class="slide">
  </div>
  <button class="prev-btn">←</button>
  <button class="next-btn">→</button>
  <div class="dots-container"></div>
</div>

CSS样式

.slider-container {
  position: relative;
  width: 800px;
  height: 400px;
  margin: 0 auto;
  overflow: hidden;
}

.slider {
  display: flex;
  transition: transform 0.5s ease;
}

.slide {
  min-width: 100%;
  height: 400px;
  object-fit: cover;
  display: none;
}

.slide.active {
  display: block;
}

.prev-btn, .next-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,0.5);
  color: white;
  border: none;
  padding: 10px;
  cursor: pointer;
  z-index: 10;
}

.prev-btn {
  left: 10px;
}

.next-btn {
  right: 10px;
}

.dots-container {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
}

.dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #bbb;
  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');

  // 自动播放设置
  let interval = setInterval(nextSlide, 3000);

  // 下一张
  function nextSlide() {
    const current = $('.slide.active');
    const next = current.next('.slide').length ? current.next('.slide') : $('.slide:first');

    current.removeClass('active');
    next.addClass('active');
    updateDots();
  }

  // 上一张
  function prevSlide() {
    const current = $('.slide.active');
    const prev = current.prev('.slide').length ? current.prev('.slide') : $('.slide:last');

    current.removeClass('active');
    prev.addClass('active');
    updateDots();
  }

  // 更新小圆点状态
  function updateDots() {
    const index = $('.slide.active').index();
    $('.dot').removeClass('active').eq(index).addClass('active');
  }

  // 按钮事件
  $('.next-btn').click(function() {
    clearInterval(interval);
    nextSlide();
    interval = setInterval(nextSlide, 3000);
  });

  $('.prev-btn').click(function() {
    clearInterval(interval);
    prevSlide();
    interval = setInterval(nextSlide, 3000);
  });

  // 小圆点点击事件
  $('.dot').click(function() {
    clearInterval(interval);
    const index = $(this).data('index');
    $('.slide').removeClass('active').eq(index).addClass('active');
    updateDots();
    interval = setInterval(nextSlide, 3000);
  });

  // 鼠标悬停暂停
  $('.slider-container').hover(
    function() { clearInterval(interval); },
    function() { interval = setInterval(nextSlide, 3000); }
  );
});

功能说明

  • 自动轮播:每3秒切换一次图片
  • 左右箭头按钮可手动切换
  • 底部小圆点指示器可直接跳转到指定图片
  • 鼠标悬停时暂停自动播放
  • 使用CSS过渡效果实现平滑切换

自定义选项

修改以下参数可调整轮播行为:

  • 自动播放间隔时间:setInterval(nextSlide, 3000)中的3000(毫秒)
  • 过渡动画时间:CSS中的transition: transform 0.5s ease中的0.5s
  • 轮播图尺寸:修改CSS中的width和height值

jquery轮播图代码

标签: 代码jquery
分享给朋友:

相关文章

vue实现通讯录代码

vue实现通讯录代码

实现思路 Vue实现通讯录的核心在于数据管理和组件交互。通常需要包含联系人列表、搜索功能、分组索引以及添加/编辑功能。 基本结构 创建Vue组件时需包含以下部分: 数据模型:存储联系人数组 字…

jquery最新版本

jquery最新版本

jQuery 最新版本 截至2024年7月,jQuery 的最新稳定版本是 3.7.1,发布于2023年11月16日。 版本特性 3.x 系列:支持现代浏览器(IE 9+),移除了旧版API,…

jquery之家

jquery之家

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

jquery获取radio选中的值

jquery获取radio选中的值

获取radio选中的值 使用jQuery获取被选中的radio按钮的值可以通过以下几种方法实现: 方法1:使用:checked选择器 var selectedValue = $('input[na…

jquery选择器

jquery选择器

jQuery 选择器基础 jQuery 选择器用于选取 DOM 元素,基于 CSS 选择器语法扩展。通过 $() 或 jQuery() 函数调用,返回匹配元素的集合。 常见选择器类型 元素…

jquery获取

jquery获取

获取元素 使用jQuery选择器获取元素,通过CSS选择器或jQuery特定选择器定位目标元素。常见选择器包括ID选择器(#id)、类选择器(.class)、标签选择器(tag)等。示例: $('#…