当前位置:首页 > jquery

jquery轮播代码

2026-02-03 10:26:52jquery

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

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>
  <div class="slider-controls">
    <button class="prev">Previous</button>
    <button class="next">Next</button>
  </div>
  <div class="slider-dots"></div>
</div>

CSS样式

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

.slide {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.5s ease;
}

.slide.active {
  opacity: 1;
}

.slider-controls {
  position: absolute;
  bottom: 20px;
  width: 100%;
  text-align: center;
}

.slider-dots {
  position: absolute;
  bottom: 50px;
  width: 100%;
  text-align: center;
}

.slider-dot {
  display: inline-block;
  width: 12px;
  height: 12px;
  margin: 0 5px;
  border-radius: 50%;
  background: #ccc;
  cursor: pointer;
}

.slider-dot.active {
  background: #333;
}

jQuery代码

$(document).ready(function() {
  // 初始化轮播
  const slides = $('.slide');
  const dotsContainer = $('.slider-dots');
  let currentSlide = 0;
  let slideInterval;

  // 创建指示点
  slides.each(function(index) {
    dotsContainer.append('<div class="slider-dot" data-index="' + index + '"></div>');
  });

  const dots = $('.slider-dot');
  dots.eq(0).addClass('active');

  // 切换幻灯片函数
  function goToSlide(index) {
    slides.removeClass('active');
    dots.removeClass('active');
    slides.eq(index).addClass('active');
    dots.eq(index).addClass('active');
    currentSlide = index;
  }

  // 下一张
  function nextSlide() {
    let next = currentSlide + 1;
    if (next >= slides.length) {
      next = 0;
    }
    goToSlide(next);
  }

  // 上一张
  function prevSlide() {
    let prev = currentSlide - 1;
    if (prev < 0) {
      prev = slides.length - 1;
    }
    goToSlide(prev);
  }

  // 自动播放
  function startSlider() {
    slideInterval = setInterval(nextSlide, 3000);
  }

  function stopSlider() {
    clearInterval(slideInterval);
  }

  // 事件绑定
  $('.next').click(function() {
    nextSlide();
    stopSlider();
    startSlider();
  });

  $('.prev').click(function() {
    prevSlide();
    stopSlider();
    startSlider();
  });

  dots.click(function() {
    const dotIndex = $(this).data('index');
    goToSlide(dotIndex);
    stopSlider();
    startSlider();
  });

  // 鼠标悬停暂停
  $('.slider-container').hover(
    function() {
      stopSlider();
    },
    function() {
      startSlider();
    }
  );

  // 开始轮播
  startSlider();
});

功能说明

  1. 自动轮播:默认每3秒自动切换一张图片
  2. 手动控制:可通过"Previous"和"Next"按钮手动切换
  3. 指示点:点击指示点可跳转到对应图片
  4. 悬停暂停:鼠标悬停在轮播区域时暂停自动播放

扩展建议

  1. 添加淡入淡出以外的过渡效果(如滑动)
  2. 增加响应式设计,适应不同屏幕尺寸
  3. 添加触摸事件支持移动端操作
  4. 实现无限循环轮播效果

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

相关文章

jquery api

jquery api

jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和 Ajax 交互。以下是 jQuery API 的核心功能和使用方法: 选择器 jQuery…

react 如何引入jquery

react 如何引入jquery

引入 jQuery 到 React 项目 在 React 项目中引入 jQuery 可以通过多种方式实现,但需要注意 React 和 jQuery 操作 DOM 的方式可能冲突,因此建议仅在必要时使用…

jquery之家

jquery之家

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

jquery 对话框

jquery 对话框

jQuery 对话框的实现方法 jQuery 对话框通常通过 jQuery UI 库中的 dialog() 方法实现。以下是几种常见的实现方式: 基本对话框实现 引入必要的 jQuery 和 jQ…

jquery js

jquery js

jQuery 简介 jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和 Ajax 交互。它兼容多种浏览器,提供易于使用的 API,使开发者能够更高…

jquery 删除

jquery 删除

jQuery 删除元素的方法 使用 jQuery 删除 DOM 元素可以通过多种方式实现,具体方法取决于需求。以下是几种常见的删除方式: remove() 方法 remove() 方法会删除选中的元…