Jquery图片滚动与幻灯片的实例代码

下面我将详细讲解“Jquery图片滚动与幻灯片的实例代码”的完整攻略。

1. 效果介绍

首先,我们来了解一下实现的效果。本文将介绍两种效果。

1.1 图片滚动效果

图片滚动效果是指图片自动向左(或向右)滚动,当鼠标悬停在图片上时,滚动停止,离开后继续滚动。

1.2 幻灯片效果

幻灯片效果是指图片轮番展示,每张图片停留一段时间后自动切换到下一张。

2. 示例代码

下面为大家提供两条示例代码,分别实现了图片滚动和幻灯片效果。

2.1 图片滚动

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>图片滚动</title>
    <style type="text/css">
      #scrollBox{
        width: 500px;
        height: 150px;
        overflow: hidden;
        position: relative;
        border: 1px solid #ccc;
      }
      #scrollList{
        width: 5000px;
        height: 150px;
        position: absolute;
        left: 0;
        top: 0;
      }
      #scrollList li{
        width: 500px;
        height: 150px;
        float: left;
      }
    </style>
  </head>
  <body>
    <div id="scrollBox">
      <ul id="scrollList">
        <li><img src="https://picsum.photos/id/1/500/150"></li>
        <li><img src="https://picsum.photos/id/2/500/150"></li>
        <li><img src="https://picsum.photos/id/3/500/150"></li>
        <li><img src="https://picsum.photos/id/4/500/150"></li>
        <li><img src="https://picsum.photos/id/5/500/150"></li>
        <li><img src="https://picsum.photos/id/6/500/150"></li>
        <li><img src="https://picsum.photos/id/7/500/150"></li>
      </ul>
    </div>
    <script type="text/javascript" src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
    <script type="text/javascript">
      $(function(){
        var speed = 50; //图片滚动的速度
        var scrollBox = $("#scrollBox");
        var scrollList = $("#scrollList");
        var cloneBox = scrollList.clone();
        var w = cloneBox.width();
        cloneBox.append(scrollList.clone()); //克隆滚动列表
        scrollBox.append(cloneBox); //将克隆的列表添加到滚动框中
        var timer;
        function roll(){
          if (scrollBox.scrollLeft() >= w) {
            scrollBox.scrollLeft(0);
          } else {
            scrollBox.scrollLeft(scrollBox.scrollLeft() + 1);
          }
        }
        timer = setInterval(roll, speed); //定时器滚动

        //鼠标悬停时,停止滚动;离开时,继续滚动
        scrollBox.hover(function(){
          clearInterval(timer);
        }, function(){
          timer = setInterval(roll, speed);
        });
      });
    </script>
  </body>
</html>

上述代码实现了一个包含7张图片的滚动列表,滚动速度为50。当鼠标悬停在滚动框上时,滚动停止;当鼠标移开时,继续滚动。

2.2 幻灯片

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>幻灯片</title>
    <style type="text/css">
      #slider{
        width: 500px;
        height: 150px;
        position: relative;
        border: 1px solid #ccc;
      }
      #slider img{
        width: 500px;
        height: 150px;
        position: absolute;
        left: 0;
        top: 0;
        display: none; //初始隐藏第一张图片
      }
      #slider img:first-child{
        display: block; //显示第一张图片
      }
      #slider .dots{
        position: absolute;
        bottom: 10px;
        left: 50%;
        transform: translateX(-50%);
        text-align: center;
      }
      #slider .dot{
        display: inline-block;
        width: 8px;
        height: 8px;
        margin: 0 5px;
        cursor: pointer;
        background: #ccc;
        border-radius: 50%;
      }
      #slider .dot.active{
        background: #f00;
      }
    </style>
  </head>
  <body>
    <div id="slider">
      <img src="https://picsum.photos/id/1/500/150">
      <img src="https://picsum.photos/id/2/500/150">
      <img src="https://picsum.photos/id/3/500/150">
      <img src="https://picsum.photos/id/4/500/150">
      <img src="https://picsum.photos/id/5/500/150">
      <img src="https://picsum.photos/id/6/500/150">
      <img src="https://picsum.photos/id/7/500/150">
      <div class="dots"></div>
    </div>
    <script type="text/javascript" src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
    <script type="text/javascript">
      $(function(){
        var index = 0; //当前显示的图片索引
        var slider = $("#slider");
        var imgList = slider.find("img");
        var dotList = slider.find(".dots");
        var timer;
        //自动切换图片
        function slide(){
          index++;
          if (index >= imgList.length) {
            index = 0;
          }
          imgList.eq(index).fadeIn().siblings().fadeOut();
          dotList.find(".dot").eq(index).addClass("active").siblings().removeClass("active");
        }
        timer = setInterval(slide, 3000); //定时器切换

        //点击圆点切换图片
        dotList.on("click", ".dot" ,function(){
          index = $(this).index();
          imgList.eq(index).fadeIn().siblings().fadeOut();
          $(this).addClass("active").siblings().removeClass("active");
          clearInterval(timer); //清除定时器
          timer = setInterval(slide, 3000); //重新设置定时器
        });
      });
    </script>
  </body>
</html>

上述代码实现了一个包含7张图片的幻灯片,每张图片停留3秒后自动切换到下一张。同时,底部也添加了7个圆点,可通过点击圆点切换图片。

3. 结语

上述是本文对Jquery图片滚动与幻灯片的实例代码的详细讲解,希望能够对大家有所帮助。如有不足之处,请不吝指出。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Jquery图片滚动与幻灯片的实例代码 - Python技术站

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

相关文章

  • Bootstrap布局之栅格系统学习笔记

    针对“Bootstrap布局之栅格系统学习笔记”的完整攻略,我将从以下几个方面进行讲解: 1. 栅格系统的概念 栅格系统(Grid System)是Bootstrap中的核心组件之一。它是一种基于行(row)和列(col)的布局系统,用于构建响应式网页布局,可以方便地实现各种设备上的页面排版。 栅格系统的基础是12列的网格,每个网格默认宽度为1/12,可以通…

    css 2023年6月11日
    00
  • JavaScript实现通过滑块改变网页颜色

    如果想要通过滑块改变网页颜色,可以使用JavaScript实现。这个功能的实现步骤大概分为以下几个部分: 在HTML中添加滑块控件,并设置ID,用于JavaScript调用。 <input type="range" min="0" max="255" step="1" id…

    css 2023年6月9日
    00
  • 了解CSS的查找匹配原理,让CSS更简洁、高效

    了解CSS的查找匹配原理可以让我们更加灵活地使用CSS样式表,让CSS代码更加简洁、高效。下面我将介绍一些方法和技巧,让你更好地理解并使用CSS的查找匹配原理。 CSS选择器的查找匹配原理 CSS选择器是用来选中DOM元素并为其添加样式的一种方式。了解CSS选择器的查找匹配原理可以让我们更好地理解CSS的结构,提高CSS代码的编写效率。 优先级 当多个CSS…

    css 2023年6月9日
    00
  • css 不同媒介的显示样式控制方式

    CSS可以根据不同媒介控制显示样式,其中包括屏幕、打印机等不同引擎。通常我们使用@media规则来定义这些不同媒介的样式,其语法如下: @media mediatype and (media feature){ CSS-Code; } 其中mediatype可以是多种媒介类型, 如 screen(屏幕)、print(打印)、speech(语音)等,media…

    css 2023年6月9日
    00
  • CSS属性之定位属性(图文详解)

    CSS属性之定位属性(图文详解) CSS定位属性会对元素的显示位置进行控制,包括position、top/bottom和left/right等属性。本文将为大家详细介绍CSS定位属性,以及如何正确应用它们。 position属性 position属性用来指定元素在文档中的定位方式。常用的值有4种: static(默认):元素在文档中遵循正常流程布局,不进行特…

    css 2023年6月9日
    00
  • 如何用react优雅的书写CSS

    如何用React优雅地书写CSS React是一种流行的JavaScript库,用于构建用户界面。在React中,可以使用CSS来定义组件的样式。本攻略将详细讲解如何用React优雅地书写CSS,包括基本原理、制作方法和示例说明。 1. 基本原理 在React中,可以使用CSS模块、CSS-in-JS和CSS预处理器等技术来定义组件的样式。其中,CSS模块是…

    css 2023年5月18日
    00
  • CSS样式表与具体设备表示

    CSS样式表与具体设备表示,是指在为不同设备编写CSS样式时,需要使用一些特定的代码来自适应不同的屏幕大小和设备类型。 以下是完整攻略,包括两个示例说明: 一、基础方案:使用媒体查询 媒体查询是一种CSS技术,可以根据不同的设备类型和屏幕大小,在同一个样式表中指定不同的样式。通过媒体查询,可以为不同大小的设备定义不同的样式,从而使网页在各种设备上都能正常显示…

    css 2023年6月9日
    00
  • css之display属性之inline-block布局实现详解

    CSS之display属性之inline-block布局实现详解 在网页布局的过程中,有时候我们需要把元素放在一行中并且保持元素间的间距,而且元素的大小不确定,这个时候使用inline-block布局可以很好的解决这个问题。 1. inline-block的基本概念 inline-block是指内联块级元素,这个属性可以让元素以块级元素的方式显示,同时保持元…

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