当前位置:首页 > jquery

jquery轮播代码

2026-03-02 18:28:38jquery

jQuery轮播代码实现

轮播效果是网页中常见的交互组件,可以通过jQuery快速实现。以下是几种常见的轮播实现方式:

基础自动轮播

$(document).ready(function(){
  var currentIndex = 0;
  var items = $('.slider-item');
  var itemAmt = items.length;

  function cycleItems() {
    var item = $('.slider-item').eq(currentIndex);
    items.hide();
    item.css('display','inline-block');
  }

  var autoSlide = setInterval(function() {
    currentIndex += 1;
    if (currentIndex > itemAmt - 1) {
      currentIndex = 0;
    }
    cycleItems();
  }, 3000);

  $('.next').click(function() {
    clearInterval(autoSlide);
    currentIndex += 1;
    if (currentIndex > itemAmt - 1) {
      currentIndex = 0;
    }
    cycleItems();
  });

  $('.prev').click(function() {
    clearInterval(autoSlide);
    currentIndex -= 1;
    if (currentIndex < 0) {
      currentIndex = itemAmt - 1;
    }
    cycleItems();
  });
});

带淡入淡出效果的轮播

$(function() {
  var slideCount = $('#slider ul li').length;
  var slideWidth = $('#slider ul li').width();
  var slideHeight = $('#slider ul li').height();
  var sliderUlWidth = slideCount * slideWidth;

  $('#slider').css({ width: slideWidth, height: slideHeight });
  $('#slider ul').css({ width: sliderUlWidth, marginLeft: -slideWidth });
  $('#slider ul li:last-child').prependTo('#slider ul');

  function moveLeft() {
    $('#slider ul').animate({
      left: +slideWidth
    }, 200, function() {
      $('#slider ul li:last-child').prependTo('#slider ul');
      $('#slider ul').css('left', '');
    });
  };

  function moveRight() {
    $('#slider ul').animate({
      left: -slideWidth
    }, 200, function() {
      $('#slider ul li:first-child').appendTo('#slider ul');
      $('#slider ul').css('left', '');
    });
  };

  $('a.control_prev').click(function() {
    moveLeft();
  });

  $('a.control_next').click(function() {
    moveRight();
  });
});

响应式轮播实现

$(window).on('load resize', function() {
  var windowWidth = $(window).width();
  var sliderWidth = windowWidth < 768 ? windowWidth : 768;

  $('.slider-container').css({
    'width': sliderWidth,
    'margin': '0 auto'
  });

  var slideWidth = $('.slider-container').width();
  var slideCount = $('.slider-slide').length;
  var totalWidth = slideCount * slideWidth;

  $('.slider-track').css('width', totalWidth);
  $('.slider-slide').css('width', slideWidth);
});

var currentSlide = 0;
var slideCount = $('.slider-slide').length;

function goToSlide(n) {
  $('.slider-track').css('transform', 'translateX(' + (-n * 100) + '%)');
  currentSlide = n;
}

$('.slider-next').click(function() {
  currentSlide = (currentSlide + 1) % slideCount;
  goToSlide(currentSlide);
});

$('.slider-prev').click(function() {
  currentSlide = (currentSlide - 1 + slideCount) % slideCount;
  goToSlide(currentSlide);
});

HTML结构示例

<div class="slider-container">
  <div class="slider-track">
    <div class="slider-slide">Slide 1</div>
    <div class="slider-slide">Slide 2</div>
    <div class="slider-slide">Slide 3</div>
  </div>
  <button class="slider-prev">Prev</button>
  <button class="slider-next">Next</button>
</div>

CSS基础样式

.slider-container {
  position: relative;
  overflow: hidden;
}

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

.slider-slide {
  flex: 0 0 100%;
}

.slider-prev, .slider-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}

.slider-prev {
  left: 10px;
}

.slider-next {
  right: 10px;
}

注意事项

确保在HTML中正确引入jQuery库,推荐使用最新版本。轮播效果可以根据实际需求调整动画时间、过渡效果和响应式断点。对于更复杂的需求,可以考虑使用成熟的轮播插件如Slick、Owl Carousel等。

jquery轮播代码

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

相关文章

jquery教程

jquery教程

jQuery 简介 jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画设计和 Ajax 交互。其核心特点是“写得更少,做得更多”(Write Les…

jquery怎么读

jquery怎么读

jQuery的正确发音 jQuery的发音为 "jay-query"(/ˈdʒeɪkwɪəri/)。其中: "jay" 发音类似字母 "J" 的英文读法。 "query" 发音与英文单词 "quer…

jquery的

jquery的

jQuery 简介 jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画设计和 Ajax 交互。它的核心理念是“写得更少,做得更多”(Write Le…

jquery获取

jquery获取

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

jquery 选择

jquery 选择

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

jquery动画

jquery动画

jQuery动画基础 jQuery提供了多种动画方法,用于创建平滑的过渡效果。常用的动画方法包括animate()、fadeIn()、fadeOut()、slideUp()和slideDown()。…