首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

左右箭头的jquery焦点图自动轮播代码

以下是一个使用 jQuery 实现的左右箭头控制焦点图自动轮播的示例代码:

代码语言:txt
复制
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>焦点图自动轮播</title>
  <style>
    * {
      margin: 0;
      padding: 0;
    }

    .slider {
      position: relative;
      width: 80%;
      margin: 0 auto;
      overflow: hidden;
    }

    .slider ul {
      display: flex;
      list-style: none;
    }

    .slider ul li {
      width: 100%;
      transition: all 0.5s;
    }

    .slider .arrow {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      cursor: pointer;
    }

    .slider .prev {
      left: 10px;
    }

    .slider .next {
      right: 10px;
    }
  </style>
</head>

<body>
  <div class="slider">
    <ul>
      <li><img src="image1.jpg" alt="Image 1"></li>
      <li><img src="image2.jpg" alt="Image 2"></li>
      <li><img src="image3.jpg" alt="Image 3"></li>
    </ul>
    <div class="arrow prev">&#10094;</div>
    <div class="arrow next">&#10095;</div>
  </div>

  <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
  <script>
    $(document).ready(function () {
      let currentIndex = 0;
      const $sliderUl = $('.slider ul');
      const $slides = $sliderUl.find('li');
      const slideCount = $slides.length;

      function moveToSlide(index) {
        $sliderUl.css('transform', `translateX(-${index * 100}%)`);
        currentIndex = index;
      }

      $('.prev').click(function () {
        let newIndex = currentIndex - 1;
        if (newIndex < 0) {
          newIndex = slideCount - 1;
        }
        moveToSlide(newIndex);
      });

      $('.next').click(function () {
        let newIndex = currentIndex + 1;
        if (newIndex >= slideCount) {
          newIndex = 0;
        }
        moveToSlide(newIndex);
      });

      // 自动轮播
      setInterval(function () {
        let newIndex = currentIndex + 1;
        if (newIndex >= slideCount) {
          newIndex = 0;
        }
        moveToSlide(newIndex);
      }, 3000);
    });
  </script>
</body>

</html>

基础概念:

  • jQuery:一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和 Ajax 交互。
  • 焦点图:在网页上展示一系列图片,并通过特定的导航方式(如左右箭头)切换显示的图片。

优势:

  1. 提升用户体验:吸引用户的注意力,直观地展示重要信息或产品。
  2. 节省空间:可以在有限的页面区域内展示多个图片。
  3. 增强视觉效果:通过动态切换带来更丰富的视觉体验。

类型:

  1. 手动控制:用户通过点击按钮或滑动来切换图片。
  2. 自动轮播:按照设定的时间间隔自动切换图片。

应用场景:

  • 网站首页的图片展示。
  • 电商网站的产品推荐。
  • 新闻网站的最新资讯展示。

常见问题及解决方法:

  1. 图片切换不流畅:
    • 原因:可能是图片加载过慢或 JavaScript 执行效率低。
    • 解决方法:优化图片大小,使用适当的图片格式(如 WebP),减少 HTTP 请求;优化 JavaScript 代码,避免不必要的 DOM 操作。
  • 自动轮播停止:
    • 原因:可能是定时器设置错误或在某些操作后未重新启动定时器。
    • 解决方法:确保定时器的正确设置,并在需要时重新启动定时器。

希望这个示例和解释能帮助您理解并实现焦点图的自动轮播功能。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

CSS-用伪类制作小箭头(轮播图的左右切换btn)

先上学习地址:http://www.htmleaf.com/Demo/201610234136.html 作者对轮播图左右按钮的处理方法一改往常,不是简单地用btn.prev+btn.next的图片代替...如下是一个小房子的图标代码: ?...none; -webkit-font-smoothing: antialiased; }  也就是说:字体“Glyphicons Halflings”中, "\e079"、"\e080"分别对应的就是左右箭头了...推理没错,因为我换一个字体他就不是这个图标了,眼下搞不懂具体原理,但可以肯定的是,这个字体和这两个号码组合,出来的就是左右箭头图标。...2017-07-13  17:48:34 前几天刚掌握了字体图标,刚好又看到一开始蒙着眼睛走路的自己写的这篇白痴的文章, 左右箭头就是字体图标,这两天字体图标原理及文章整理的计划已经被我提上日程, 文章出来以后

2.7K80
  • JavaScript笔记(23)轮播图

    终于要学习轮播图了...激动 网页轮播图 轮播图也称为焦点图,是网页中比较常见的网页特效 先来看看需求: 老师是在之前的品优购的案例中补充的,但是我就重新做一个简单的网页吧,方便看一些:...结构: 我们的轮播图会有一排小圆圈在下面,但是小圆圈的个数总是不确定的,所以我们需要动态生成小圆圈,有几张图片就生成几个小圆圈....本文由“壹伴编辑器”提供技术支持 创建元素,添加元素 那么现在不管有多少图片他都能动态的生成 本文由“壹伴编辑器”提供技术支持 先把最简单的做了,当鼠标移动到焦点图上时,左右箭头显示,移开时隐藏...脑袋一片浆糊 我们在点击左右箭头时,就将index赋值给num和circle,这样才能实现同步....最后再将向左的也写一下: 现在做最后一个模块,让轮播图在没有点击的情况下自动播放,做完就去玩手机!!! 第三条让我欣喜如狂~ 想到自动播放,那就先设置一个定时器: 就是这么简单!!

    1.2K20

    自己实现PC端jQuery版轮播图

    ,后来想了想,就不引入它了,免得又得增加依次一次网络请求,项目里既然已经用到了jQuery,那就索性用jQuery写一个轮播图吧。...现在把自己写的轮播图这块代码单独拿出来,做一个小demo写在这里记录一下(demo中轮播图的图片网上随意找的) 实现的效果:     1、自动轮播(轮播时间间隔在js代码中自定义)     2、点击左右侧按钮...,实现手动切换     3、底部小圆点根据切换图片的位置相应的显示active状态     4、鼠标经过轮播图区域,停止轮播,离开轮播图区域开始轮播 代码目录结果如下: 一、index.html 注:这里以...DOCTYPE html> PC-jquery版轮播图...,清除定时器,停止自动轮播 slideBox.mouseenter(function () { clearInterval(timer); }) //鼠标离开轮播图区域时,重新启动自动轮播 slideBox.mouseleave

    11.2K100

    自实现PC端jQuery版轮播图

    ,后来想了想,就不引入它了,免得又得增加依次一次网络请求,项目里既然已经用到了jQuery,那就索性用jQuery写一个轮播图吧。...现在把自己写的轮播图这块代码单独拿出来,做一个小demo写在这里记录一下(demo中轮播图的图片网上随意找的) 实现的效果:     1、自动轮播(轮播时间间隔在js代码中自定义)     2、点击左右侧按钮...,实现手动切换     3、底部小圆点根据切换图片的位置相应的显示active状态     4、鼠标经过轮播图区域,停止轮播,离开轮播图区域开始轮播 代码目录结果如下: 一、index.html 注:这里以...$('#arrow_r'); //右侧箭头 var slideBox = $('#slide'); //轮播图区域 var innerBox = $('#inner')...,清除定时器,停止自动轮播 slideBox.mouseenter(function () { clearInterval(timer); }) //鼠标离开轮播图区域时,重新启动自动轮播 slideBox.mouseleave

    9.4K20

    自实现PC端jQuery版轮播图

    ,后来想了想,就不引入它了,免得又得增加依次一次网络请求,项目里既然已经用到了jQuery,那就索性用jQuery写一个轮播图吧。...现在把自己写的轮播图这块代码单独拿出来,做一个小demo写在这里记录一下(demo中轮播图的图片网上随意找的) 实现的效果:     1、自动轮播(轮播时间间隔在js代码中自定义)     2、点击左右侧按钮...,实现手动切换     3、底部小圆点根据切换图片的位置相应的显示active状态     4、鼠标经过轮播图区域,停止轮播,离开轮播图区域开始轮播 代码目录结果如下: ?...DOCTYPE html> PC-jquery版轮播图...,清除定时器,停止自动轮播 slideBox.mouseenter(function () { clearInterval(timer); }) //鼠标离开轮播图区域时,重新启动自动轮播 slideBox.mouseleave

    5.6K70

    回顾自己三次失败的面试经历

    他原话的意思是说,让我用jQuery写个轮播图效果,给我提供的条件是,一台没有联网的笔记本电脑,和本地下载好的jQuery的API文档。...当时刚从培训班学出来的我,html和css基础还算扎实,但对jquery的api熟练程度还是有所欠缺的。因为之前在培训班学习切静态页面的时候,碰到轮播图效果一般都会用网上别人写好的插件。...回去之后,我便开始研究,如何用jquery去实现轮播图的效果。在这里,我简单地说下,当时很多购物网站(比如说淘宝京东)都会添加商品的图片轮播效果。...然后为左右箭头添加了hover和click事件,在这里调用了两个函数,一个是重置定时器函数autoChangeAgain(),一个是图片切换处理函数changeTo()。...当点击左右箭头或者是自动轮播的时候,我们都会调用animate()函数,通过修改left 值产生动态滚动的效果。

    1.8K90

    搞事情,jquery插件收费源码 --- 基于swiper带视差切换效果的轮播图

    本次分享的轮播图异于常规之处在于:带有视觉误差。 源码下载地址:。。。本文的重点是想办法下载jquery插件库里面的收费资源(不付钱)。 本例就已该demo为例。...先开一个资源 可以看到页面链接地址为:http://www.jq22.com/jquery-info17466 点击下载 看到页面会给一下提示信息,右键按钮查看源码,发现调用的是xz() 函数...在右侧源码区域搜索函数,得到以下一段代码 即使后台对数据进行了处理,那先看一下不需要收费的资源返回的data数据 得到 data = 'download/myscroll1796201712192341...现在想办法获取资源的信息,从列表页出发。...继续探索 发现没,代码里面其实是有的。 解释到这里以后就告一段落了,为了维护正版,都知道程序猿的不容易,挣这么个辛苦钱。当然也为了自身的安全考虑。

    1.7K10

    FlexSlider图片轮播插件的使用

    Flexslider是一款基于的jQuery内容滚动插件,不用自己写轮播图的代码,现在可以直接使用这个插件。...首先在页面head部位载入jquery库文件和Flexslider插件,以及Flexslider所需的基本css样式文件。...最终代码: 效果图如下: Flexslider选项设置 参数 描述 默认值 animation 动画效果类型,有"fade":淡入淡出,"slide":滑动 "fade" easing 内容切换时缓动效果...是否循环滚动 true startAt 初始滑动时的起始位置,定位从第几个开始滑动 0 slideshow 是否自动滑动 true slideshowSpeed 滑动内容展示时间(ms) 7000 animationSpeed...) 600 initDelay 初始化时延时时间 0 pauseOnHover 鼠标滑向滚动内容时,是否暂停滚动 false touch 是否支持触摸滑动 true directionNav 是否显示左右方向箭头按钮

    4K70

    SuperSlide轮播插件滚动高度或宽度不对的问题解决

    SuperSlide 是一款比较实用的轮播插件,网站上常用的“焦点图/幻灯片”“Tab标签切换”“图片滚动”“无缝滚动”等都能实现,兼容包括 IE6 的绝大部分浏览器。...但是作者写的教程复杂难懂,有时需要摸索好久才能实现效果。 问题描述: 而且会存在一些问题,没有考虑到。今天就遇到一个问题,轮播的滚动距离出现偏移。...问题原因: 因为 SuperSlide 初始化后会自动计算(重置)li 的宽度和高度(左右滑动是宽度,上下滚动是高度)。所以 li 不能有 padding 属性值和 border 属性值。...代码示例: HTML:                                            ...effect: "left",         autoPlay: true,         vis: 3     }); 声明:本文由w3h5原创,转载请注明出处:《SuperSlide轮播插件滚动高度或宽度不对的问题解决

    2.3K20

    插上翅膀:JQuery 插件机制详解

    实战案例:图片轮播插件为了更深入地理解 JQuery 插件机制,让我们来实现一个简单的图片轮播插件。该插件可以接受一组图片,然后在页面中创建一个图片轮播的效果。1....编写 HTML 结构首先,我们需要一个容器来放置图片,以及左右箭头用于切换图片。左右箭头按钮添加了样式和点击事件。2. 编写 JQuery 插件代码接下来,我们创建一个名为 sliderPlugin 的 JQuery 插件,用于初始化图片轮播效果。...);在这个插件代码中,我们首先获取了容器、图片轮播、左右按钮等元素,然后初始化了一些参数,包括图片数量、设置图片容器的宽度等。...接着,我们为左右按钮添加了点击事件,点击按钮时更新 slideIndex 的值,然后调用 updateSlider 函数来更新图片轮播的位置。

    29310

    React 轮播图组件 Carousel

    本文将由浅入深地介绍如何在 React 中实现和优化轮播图组件,探讨常见问题、易错点及解决方案,并提供代码案例解释。1. 轮播图的基本概念1.1 定义轮播图是一种可以自动或手动切换显示多个元素的组件。...通常包含一组图片或卡片,用户可以通过点击左右箭头或指示器来切换当前显示的内容。轮播图还可以设置自动播放功能,定时切换显示内容。1.2 核心功能自动播放:定时切换显示内容。...手动切换:通过左右箭头或指示器切换内容。循环播放:当到达最后一张时,自动回到第一张。响应式设计:根据屏幕大小调整显示效果。2....*/} );};export default Carousel;2.2 添加手动切换功能为了使轮播图更加交互友好,我们可以添加左右箭头和指示器,允许用户手动切换内容。...其他代码 ...};4. 如何避免常见错误4.1 确保状态同步在多个地方更新状态时,确保状态同步更新,避免出现不一致的情况。例如,在手动切换和自动播放时都应更新 currentIndex。

    28810
    领券