<…">
前端开发社区前端开发社区
  • 首页
  • VUE.js
  • React.js
  • HTML
  • CSS
  • JavaScript
  • PHP
  • jquery
  • Java
  • MySQL
  • uniapp
前端开发社区
当前位置:首页 > jquery

jquery 走马灯

2026-03-16 22:52:08jquery

jquery 走马灯

jQuery 走马灯实现方法

基础 HTML 结构

<div class="carousel">
  <div class="carousel-inner">
    <div class="carousel-item active"><img src="image1.jpg"></div>
    <div class="carousel-item"><img src="image2.jpg"></div>
    <div class="carousel-item"><img src="image3.jpg"></div>
  </div>
  <button class="carousel-prev">←</button>
  <button class="carousel-next">→</button>
</div>

CSS 样式准备

.carousel {
  position: relative;
  width: 600px;
  height: 400px;
  overflow: hidden;
}
.carousel-inner {
  display: flex;
  transition: transform 0.5s ease;
}
.carousel-item {
  min-width: 100%;
}
.carousel-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

jQuery 核心逻辑

$(document).ready(function() {
  let currentIndex = 0;
  const $items = $('.carousel-item');
  const itemCount = $items.length;

  // 下一张按钮
  $('.carousel-next').click(function() {
    currentIndex = (currentIndex + 1) % itemCount;
    updateCarousel();
  });

  // 上一张按钮
  $('.carousel-prev').click(function() {
    currentIndex = (currentIndex - 1 + itemCount) % itemCount;
    updateCarousel();
  });

  // 自动轮播
  let autoPlay = setInterval(() => {
    currentIndex = (currentIndex + 1) % itemCount;
    updateCarousel();
  }, 3000);

  // 鼠标悬停暂停
  $('.carousel').hover(
    () => clearInterval(autoPlay),
    () => autoPlay = setInterval(() => {
      currentIndex = (currentIndex + 1) % itemCount;
      updateCarousel();
    }, 3000)
  );

  function updateCarousel() {
    $('.carousel-inner').css('transform', `translateX(-${currentIndex * 100}%)`);
  }
});

扩展功能实现

添加指示器

jquery 走马灯

<div class="carousel-indicators">
  <span class="indicator active" data-index="0"></span>
  <span class="indicator" data-index="1"></span>
  <span class="indicator" data-index="2"></span>
</div>
$('.indicator').click(function() {
  currentIndex = $(this).data('index');
  updateCarousel();
  updateIndicators();
});

function updateIndicators() {
  $('.indicator').removeClass('active');
  $(`.indicator[data-index="${currentIndex}"]`).addClass('active');
}

淡入淡出效果 修改 CSS 和 JavaScript:

.carousel-inner {
  position: relative;
}
.carousel-item {
  position: absolute;
  opacity: 0;
  transition: opacity 1s ease;
}
.carousel-item.active {
  opacity: 1;
}
function updateCarousel() {
  $('.carousel-item').removeClass('active');
  $($items[currentIndex]).addClass('active');
}

响应式处理

function initCarousel() {
  const carouselWidth = $('.carousel').width();
  $('.carousel-item').width(carouselWidth);
}

$(window).resize(initCarousel);
initCarousel();

注意事项

  • 确保 jQuery 库已正确引入
  • 图片路径需要根据实际项目调整
  • 过渡效果时间可根据需求修改
  • 移动端建议添加触摸事件支持
  • 对于大量图片建议实现懒加载

标签: 走马灯jquery
分享给朋友:

相关文章

jquery库

jquery库

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

jquery文档

jquery文档

以下是关于 jQuery 文档的核心内容和资源整理,便于快速查阅和使用: jQuery 官方文档 官网地址:jQuery Official Documentation 内容分类:API 参考:包含所…

jquery选择器

jquery选择器

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

jquery获取

jquery获取

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

jquery js

jquery js

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

jquery滚动

jquery滚动

jQuery 滚动事件监听 使用 jQuery 监听滚动事件可以通过 scroll() 方法实现。以下代码会在窗口滚动时触发回调函数: $(window).scroll(function() {…

最新文章
  • jquery与js的区别

    2026-03-17 00:40:03

  • jquery添加子节点

    2026-03-17 00:38:28

  • jquery添加class属性

    2026-03-17 00:37:01

  • jquery的load方法

    2026-03-17 00:35:24

  • jquery项目实例

    2026-03-17 00:33:51

标签列表
  • vue (13920)
  • 原理 (619)
  • 拖拽 (425)
  • 分页 (587)
  • 跳转 (573)
  • 页面 (1076)
  • 路由 (649)
  • 列表 (461)
  • 功能 (1236)
  • 项目 (502)
  • 菜单 (435)
  • 组件 (1021)
  • 表格 (662)
  • 数据 (485)
  • 图片 (767)
  • js (3409)
  • 如何实现 (1639)
  • 效果 (610)
  • react (3311)
  • jquery (1398)
  • css (2718)
  • php (4571)
  • java (1889)
  • uniapp (1363)
  • elementui (828)

陕ICP备2023000799号  网站地图

Powered By Z-BlogPHP. Theme by TOYEAN.