jquery实现图片切换代码

yizhihongxing

下面我将提供一个完整的jquery实现图片切换的攻略。

步骤一:HTML结构

首先需要创建一个HTML结构,例如:

<div class="slideshow">
  <img src="img1.jpg" alt="Image 1" class="active">
  <img src="img2.jpg" alt="Image 2">
  <img src="img3.jpg" alt="Image 3">
  <img src="img4.jpg" alt="Image 4">
</div>

这里我们创建了一个包含4张图片的图片轮播器,其中第一张图片默认为激活状态,其他图片默认为隐藏状态。

步骤二:CSS样式

接下来为轮播器设置CSS样式,例如:

.slideshow {
  position: relative;
  height: 400px;
}
.slideshow img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  max-width: 100%;
  max-height: 100%;
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
}
.slideshow img.active {
  opacity: 1;
}

这里我们将轮播器容器设置为相对定位,每张图片设置为绝对定位,并通过opacity属性控制图片的显示和隐藏。我们同时为.active类设置了不透明度为1,确保当前激活的图片被显示出来。

步骤三:jQuery代码

最后编写jQuery代码来控制图片切换:

$(document).ready(function() {
  //自动播放
  setInterval(function() {
    //获取当前激活图片和下一张图片
    var activeImage = $('.slideshow img.active');
    var nextImage = activeImage.next();

    //如果当前激活图片是最后一张,则将下一张图片设置为第一张
    if (nextImage.length === 0) {
      nextImage = $('.slideshow img:first-child');
    }

    //将下一张图片设置为激活状态,并且将当前激活图片设置为隐藏状态
    activeImage.removeClass('active');
    nextImage.addClass('active');
  }, 3000); //每3秒钟自动切换一张图片

  //手动切换
  $('.slideshow').on('click', function() {
    //获取当前激活图片和下一张图片
    var activeImage = $('.slideshow img.active');
    var nextImage = activeImage.next();

    //如果当前激活图片是最后一张,则将下一张图片设置为第一张
    if (nextImage.length === 0) {
      nextImage = $('.slideshow img:first-child');
    }

    //将下一张图片设置为激活状态,并且将当前激活图片设置为隐藏状态
    activeImage.removeClass('active');
    nextImage.addClass('active');
  });
});

这段代码实现了两种切换方式:自动切换和手动点击切换。在自动切换中,我们使用setInterval函数每隔3秒钟自动切换一张图片。在手动切换中,我们使用jQuery的on事件绑定函数,当轮播器被点击时切换到下一张图片。

示例

下面提供示例展示这段代码的运行效果:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8" />
    <title>jQuery图片切换</title>
    <style>
      .slideshow {
        position: relative;
        height: 400px;
      }
      .slideshow img {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
        max-width: 100%;
        max-height: 100%;
        opacity: 0;
        transition: opacity 0.5s ease-in-out;
      }
      .slideshow img.active {
        opacity: 1;
      }
    </style>
  </head>
  <body>
    <div class="slideshow">
      <img src="https://picsum.photos/id/1015/600/400" alt="Image 1" class="active">
      <img src="https://picsum.photos/id/1016/600/400" alt="Image 2">
      <img src="https://picsum.photos/id/1018/600/400" alt="Image 3">
      <img src="https://picsum.photos/id/1021/600/400" alt="Image 4">
    </div>
    <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
    <script>
      $(document).ready(function() {
        setInterval(function() {
          var activeImage = $('.slideshow img.active');
          var nextImage = activeImage.next();
          if (nextImage.length === 0) {
            nextImage = $('.slideshow img:first-child');
          }
          activeImage.removeClass('active');
          nextImage.addClass('active');
        }, 3000);
        $('.slideshow').on('click', function() {
          var activeImage = $('.slideshow img.active');
          var nextImage = activeImage.next();
          if (nextImage.length === 0) {
            nextImage = $('.slideshow img:first-child');
          }
          activeImage.removeClass('active');
          nextImage.addClass('active');
        });
      });
    </script>
  </body>
</html>

上述示例展示了一张集成了jQuery实现图片切换功能的轮播图。当页面加载完成后,图片轮播器默认会自动切换图片,并且可以通过手动方式点击该轮播图来进行切换(默认切换时间为3秒)。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:jquery实现图片切换代码 - Python技术站

(0)
上一篇 2023年6月11日
下一篇 2023年6月11日

相关文章

  • 网络广告的发展历程的详细分析与心得体会(图文)

    下面我将详细讲解如何撰写一篇网络广告发展历程的详细分析文章,包括步骤和注意事项,帮助你完成这篇文章。 步骤一:确定文章主题 首先需要确定文章的主题,这里我们选择“网络广告的发展历程的详细分析与心得体会”。确定主题后,需要开展文献调查,了解网络广告的历史发展和现状,收集相关数据和材料。 步骤二:撰写文章大纲 文章大纲是文章撰写的基础,要把各个章节、段落的内容和…

    css 2023年6月10日
    00
  • 更靠谱的H5横竖屏检测方法(js代码)

    下面我将详细讲解如何实现更靠谱的H5横竖屏检测方法,并提供两个示例供参考。 1. 背景 在移动端开发中,常常需要根据设备的横竖屏状态来调整页面布局以适应不同的屏幕尺寸和方向。而实现横竖屏检测的方法也多种多样,比如通过screen.orientation.angle、window.orientation、resize事件等。但是这些方法都存在兼容性和准确性等问…

    css 2023年6月9日
    00
  • PHP小技巧之JS和CSS优化工具Minify的使用方法

    针对“PHP小技巧之JS和CSS优化工具Minify的使用方法”,下面是完整的攻略: 什么是Minify工具 Minify是一个可以对JS和CSS文件进行优化压缩的工具,它可以将文件中的冗余信息删除,同时还可以简化代码,从而减小文件的体积,提高加载速度。此工具使用起来比较简单,可以帮助我们更好地构建网站。 Minify工具的安装 Minify提供了两种安装方…

    css 2023年6月9日
    00
  • JS弹出层的显示与隐藏示例代码

    JS弹出层是Web开发中非常常见的一个功能。下面,我们来详细讲解如何实现JS弹出层的显示与隐藏。 1. HTML结构 首先,我们需要进行HTML结构的搭建。以下是一个最基础的HTML结构: <!–触发弹出层的按钮–> <button id="showBtn">显示弹出层</button> <!…

    css 2023年6月11日
    00
  • IE, firefox竖向横向滚动条处理

    IE和firefox的竖向和横向滚动条处理有一些区别。下面分别进行讲解。 IE竖向滚动条 IE浏览器的竖向滚动条可以通过设置overflow-y属性来控制,有以下几种情况: 自动出现滚动条:当元素的高度大于容器高度时,自动出现竖向滚动条。示例代码如下: <div style="height: 100px; overflow-y: auto;&…

    css 2023年6月10日
    00
  • IE6常见bug附解决方法

    IE6常见bug附解决方法攻略 1. 背景介绍 IE6是2001年发布的一款浏览器,当时市场上占有率相当高,但它也有很多bug,尤其是新的Web技术兼容性方面。尽管IE6已经过时,但在某些特定情况下仍然需要兼容它,因此本篇文章将介绍常见的IE6 bug以及如何解决它们。 以下是常见的IE6 bug: 2. 列表 2.1. 双倍边距(Double Margin…

    css 2023年6月10日
    00
  • CSS大师Eric采访实录

    CSS大师Eric采访实录 简介 本文是一篇关于CSS大师Eric采访实录的完整攻略。如果你对CSS技术和CSS大师Eric感兴趣,那么本文将会给你带来很多的有用信息。 攻略 阅读材料 在进行攻略之前,我们需要准备一些阅读材料,以便更好地理解CSS大师Eric的技术和思路。以下是一些推荐的资料: Eric Meyer的博客 CSS权威指南(Eric Meye…

    css 2023年6月9日
    00
  • CSS Hack详解

    CSS Hack 详解 CSS Hack是一种解决CSS在不同浏览器之间兼容性问题的技术,它的本质是利用不同浏览器对CSS的解析不同来达到兼容的目的。下面我们来详细了解一下CSS Hack的使用方法。 基础介绍 Hack的种类 常见的CSS Hack主要有三种: 属性级别Hack:用于针对不同浏览器设置不同的CSS属性值。 选择器级别Hack:用于针对不同浏…

    css 2023年6月9日
    00
合作推广
合作推广
分享本页
返回顶部