当前位置:首页 > jquery

jquery图片轮播代码

2026-02-04 05:54:02jquery

jquery图片轮播代码

jquery图片轮播代码

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

HTML结构

<div class="slider">
  <div class="slider-container">
    <img src="image1.jpg" class="active">
    <img src="image2.jpg">
    <img src="image3.jpg">
  </div>
  <div class="slider-controls">
    <button class="prev">Previous</button>
    <button class="next">Next</button>
  </div>
  <div class="slider-dots">
    <span class="dot active"></span>
    <span class="dot"></span>
    <span class="dot"></span>
  </div>
</div>

CSS样式

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

.slider-container img {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 1s ease;
}

.slider-container img.active {
  opacity: 1;
}

.slider-controls {
  position: absolute;
  width: 100%;
  display: flex;
  justify-content: space-between;
  top: 50%;
  transform: translateY(-50%);
}

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

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

.dot.active {
  background: #333;
}

jQuery代码

$(document).ready(function() {
  let currentIndex = 0;
  const images = $('.slider-container img');
  const totalImages = images.length;
  let slideInterval;

  function showImage(index) {
    images.removeClass('active');
    $(images[index]).addClass('active');
    $('.dot').removeClass('active');
    $('.dot').eq(index).addClass('active');
    currentIndex = index;
  }

  function nextImage() {
    let nextIndex = (currentIndex + 1) % totalImages;
    showImage(nextIndex);
  }

  function startSlider() {
    slideInterval = setInterval(nextImage, 3000);
  }

  function stopSlider() {
    clearInterval(slideInterval);
  }

  $('.next').click(function() {
    stopSlider();
    nextImage();
    startSlider();
  });

  $('.prev').click(function() {
    stopSlider();
    let prevIndex = (currentIndex - 1 + totalImages) % totalImages;
    showImage(prevIndex);
    startSlider();
  });

  $('.dot').click(function() {
    stopSlider();
    let dotIndex = $(this).index();
    showImage(dotIndex);
    startSlider();
  });

  startSlider();
});

功能说明

  • 自动轮播:每3秒自动切换到下一张图片
  • 手动控制:通过Prev/Next按钮切换图片
  • 指示点:点击圆点可跳转到对应图片
  • 平滑过渡:使用CSS过渡效果实现淡入淡出

扩展建议

  • 响应式设计:添加媒体查询适应不同屏幕尺寸
  • 预加载图片:确保所有图片加载完成后再启动轮播
  • 触摸支持:添加touch事件处理实现移动端滑动切换

此代码提供了核心功能,可根据实际需求调整过渡效果、时间间隔和样式细节。

标签: 代码图片
分享给朋友:

相关文章

vue实现图片

vue实现图片

Vue 实现图片功能的方法 静态图片引入 在 Vue 项目中,可以通过 src 属性直接引入静态图片。图片通常放在 public 或 assets 目录下。 <template> &…

h5实现响应式代码

h5实现响应式代码

响应式设计基础 HTML5实现响应式设计主要通过媒体查询(Media Queries)、弹性布局(Flexbox)、网格布局(Grid)和视口设置(Viewport Meta Tag)等技术。核心目标…

vue怎么实现文本代码实现

vue怎么实现文本代码实现

Vue 实现文本代码展示的方法 在 Vue 中展示代码文本通常需要结合语法高亮和格式化的功能,以下是几种常见的实现方式: 使用 <pre> 和 <code> 标签 通过 HT…

淘宝css代码制作

淘宝css代码制作

在淘宝店铺装修中,CSS代码用于自定义页面样式,提升视觉体验。以下是关键方法和注意事项: 自定义模块样式 通过淘宝旺铺的“自定义模块”功能,可以插入CSS代码。代码需包裹在<style>…

js实现代码雨

js实现代码雨

实现代码雨效果 使用HTML5 Canvas和JavaScript可以轻松实现经典的代码雨效果。以下是完整的实现代码和说明: HTML结构 <!DOCTYPE html> <htm…

Vue实现图片 放大

Vue实现图片 放大

Vue实现图片放大功能 使用v-viewer插件 安装v-viewer插件: npm install v-viewer 在main.js中引入并配置: import Viewer from 'v-…