JavaScript随手笔记---轮播图(点击切换)

article/2025/9/23 11:32:35

请添加图片描述

  • 💌 所属专栏:【JavaScript随手笔记】

  • 😀 作  者:我是夜阑的狗🐶

  • 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询!

  • 💖 欢迎大家:这里是CSDN,我总结知识的地方,喜欢的话请三连,有问题请私信 😘 😘 😘

文章目录

  • 前言
  • 一、方法一:点击切换
    • 1.实现原理
    • 2.实现过程
    • 3.实现效果
  • 二、方法二:定时切换
    • 1.实现原理
    • 2.实现过程
    • 3.实现效果
  • 总结


前言

  大家好,又见面了,我是夜阑的狗,本文是专栏 【JavaScript随手笔记】专栏的第3篇文章;
  今天被丢了一个需求 😀 😀 😀,里面就需要实现轮播图,以前在学校时候实现过,但没做记录(博客),基本就模模糊糊的感觉,所以这次就把实现过程跟原理记录下来;
  专栏地址:【JavaScript随手笔记】 , 此专栏是我是夜阑的狗对JS轮播图实现的总结,希望能够加深自己的印象,以及帮助到其他的小伙伴😉😉。
  如果文章有什么需要改进的地方还请大佬不吝赐教👏👏。


一、方法一:点击切换

1.实现原理

  基本上摸透了实现原理,实现起来难度就不会很大啦;

  • Step 1、创建一个对象来保存图片资源的路径和数量,如下:
var albumImageList = {length: 3,  //图片数量1: {id: 1, uri: "images/BO_09.png"}, 2: {id: 2, uri: "images/HRbackground.png"}, 3: {id: 3, uri: "images/local_MUSIC_00010.png"}
};
var albumImageCurrent = 1;      // 当前图片选择序列号

其中length表示图片数量,{id: 1, uri: "images/BO_09.png"}表示当前图片位置和路径,其实不用id也可以的,读者可以进行优化。albumImageCurrent 变量后面切换图片的会用上。

  • Step 2、(📢 📢 📢 最重要的一步!!!)通过点击产生回调事件,这时候判断当前显示图片位置是否超过length,没有则会对象下标加1显示下一张图片,反之显示第一张图片。从而实现图片显示循环。
  • Step 3、注册按钮事件,在回调函数中加入图片切换函数(可自己封装);

2.实现过程

  建立变量:

var albumImageList = {length: 3, //图片数量1: {id: 1, uri: "images/BO_09.png"}, 2: {id: 2, uri: "images/HRbackground.png"}, 3: {id: 3, uri: "images/local_MUSIC_00010.png"}
};
var albumImageCurrent = 1;      // 当前图片选择序列号

  图片切换函数:

/*** @author CSH* @function 函数功能:图片轮播* @param {Object} imageName [控件名称,用于实现多控件使用]* @param {Object} event [当前对象指针]*/
function albumWheelImage(imageName, event){var imageURI = {};if(albumImageCurrent < albumImageList.length){// 构建对象 imageURIimageURI[imageName] = albumImageList[++albumImageCurrent].uri;// 对控件进行赋值page.setData(imageURI,uri);}else{// 构建对象 imageURIimageURI[imageName] = albumImageList[1].uri;// 对控件进行赋值page.setData(imageURI,uri);// 当前显示图片位置albumImageCurrent = 1;}
};

  按钮回调事件,AlbumStyle1为按钮控件名,albumImage1为图片显示控件名,这里要实现三个按钮切换图片。

  /*** @author CSH* @function 函数功能: 按钮触发回调事件* @param {Object} event [当前对象指针]*/ontouchCallback: function (event) {var that = this;switch(event.target.id){case "AlbumStyle1":albumWheelImage("albumImage1",that);break;case "AlbumStyle2":albumWheelImage("albumImage2",that);break;case "AlbumStyle3":albumWheelImage("albumImage3",that);break;}},...
// 按钮回调事件的注册item.AlbumStyle1 = {ontap : that.ontouchCallback};item.AlbumStyle2 = {ontap : that.ontouchCallback};item.AlbumStyle3 = {ontap : that.ontouchCallback};

3.实现效果

  这次实现是在手表上进行操作的;⌚ ⌚ ⌚

请添加图片描述

二、方法二:定时切换

  方法一讲解了点击切换图片,想要自动切换的话,可以使用js中的setInterval定时函数来实现。

1.实现原理

  • Step 1、由于前面方法一已经封装了图片切换的函数albumWheelImage(),只要setInterval()设置定时间隔,然后把albumWheelImage()放入定时回调中即可;

setInterval(func, time)函数参数介绍:

  • func : 回调函数,该函数会每隔一段时间被调用一次;
  • time: 每次调用间隔的时间,单位是毫秒;
  • 返回值:返回一个Number类型的数据,这个数字用来作为定时器的唯一标识;

  注意:停止轮播图的时候记得清空定时器clearInterval();

2.实现过程

  实现定时轮播比较简单,给定回调函数跟时间间隔即可;

    this.showTips = setInterval(function () {albumWheelImage("albumImage1",that);}, 1000);

3.实现效果

  这次实现是在手表上进行操作的;⌚ ⌚ ⌚

请添加图片描述


总结

  感谢观看,如果有帮助到你,请给文章点个赞和收藏,让更多的人看到。🌹 🌹 🌹

  也欢迎你,关注我。👍 👍 👍

  原创不易,还希望各位大佬支持一下,你们的点赞、收藏和留言对我真的很重要!!!💕 💕 💕 最后,本文仍有许多不足之处,欢迎各位认真读完文章的小伙伴们随时私信交流、批评指正!

更多专栏订阅:

  • 😀 【LeetCode题解(持续更新中)】
  • 🚝 【Java Web项目构建过程】
  • 💛 【数字图像处理】
  • 【JavaScript随手笔记】
  • 🤩 【大数据学习笔记(华为云)】
  • 🦄 【程序错误解决方法(建议收藏)】
  • 🚀 【软件安装教程】



订阅更多,你们将会看到更多的优质内容!!


http://chatgpt.dhexx.cn/article/Rwa5HmTP.shtml

相关文章

swiper 点击切换轮播图实现

mySwiper.slideTo(index, speed, runCallbacks 控制Swiper切换到指定slide。 参数名 类型 是否必填 描述 index num 必选 指定将要切换到的slide的索引 speed num 可选 切换速度(单位ms) runCallbacks boolean 可选 设置为false时不会触发transition回调函数 代码如下&#x…

快速实现轮播图片效果

效果描述&#xff1a; 轮播图&#xff0c;默认情况下循环向左轮播&#xff0c;点击左右箭头实现切换到上一张以及下一张&#xff0c;点击小圆点将直接显示单击的那张图片。 实现代码&#xff1a; 使用bootstrap中的Carousel插件实现 <!DOCTYPE html> <html> <…

html图片轮播加上切换按钮,轮播图(点击按钮切换)

结构部分&#xff1a; 上一张 下一张 样式部分&#xff1a; *{ margin: 0; padding: 0; } #container{ width: 450px; margin:50px auto; padding: 20px; text-align: center; background-color: antiquewhite; } img{ width: 450px; height: 200px; } .btn button{ background…

html 轮播图左右切换代码,js实现左右轮播图

本文实例为大家分享了js实现左右轮播图的具体代码,供大家参考,具体内容如下 我的轮播图功能有:自动播放、点击焦点切换和点击左右按钮切换 效果图: 自动轮播 点击焦点切换 点击左右按钮切换 注意:本文用带背景颜色的li标签指代图片,有需要的话可以将图片插入li标签内 思路…

java添加轮播图_[Java教程]原生js实现轮播图

[Java教程]原生js实现轮播图 0 2018-10-14 19:01:28 如何使用原生js实现轮播图效果呢,现在带着大家做一个小小的例子 先说一下这次的轮播图需要实现的功能点: 1.3s自动切换图片,图片切换时提示点跟随切换 2.鼠标划到图片上,自动切换轮播图停止 3.指示点划过切换对应的图片,…

js实现轮播图(点击小图片切换大图片+自动切换)

js实现轮播图(点击小图片切换大图片自动切换) 实现效果如下&#xff1a; 点击小图切换大图和轮播标题&#xff0c;点击左右按钮大小图和轮播标题切换&#xff0c;鼠标进入清除定时器&#xff0c;鼠标移出恢复轮播 html代码如下&#xff1a; <div class"switch fl&…

Vuetify Carouse轮播图 图片切换导致页面总是自动跳转到轮播图位置

文章目录 begin!!!Solution1Solution2end begin vuetify carouse轮播图 的图片自动切换的时候, 会自动聚焦跳转到轮播图自身的位置. 这导致了一个问题, 当屏幕同时显示着轮播图和其他内容时, 轮播图一自动切换, 页面就会自动跳转到轮播图的位置! !!! 紧急补充! 经过十个测…

html图片的自动轮播js,js实现轮播图效果 纯js实现图片自动切换

本文实例为大家分享了纯js实现图片自动切换的具体代码,供大家参考,具体内容如下 1.鼠标经过的时候左右两个小按钮会自动弹出,自动播放停止,点击左右小按钮可以切换图片; 2. 鼠标离开,恢复自动播放; 3. 点击下方中间几个小圆圈,也会自动切换图片; 源代码:document * {…

使用CSS实现简单的图片切换(轮播图)

使用CSS实现简单的图片切换(轮播图) 预览图如下: 目录 使用CSS实现简单的图片切换(轮播图)一:首先创建基本布局1:创建一个div容器 ,里面的ul与ol标签分别对应轮播图片和下方圆点;二:添加CSS样式1:为图片与圆点添加相应样式,使其正常显示;标题2:为图片和圆点添加…

b站黑马的Vue快速入门案例代码——图片切换(类似手动播放的轮播图)

目录 目标效果&#xff1a; 重点原理&#xff1a; 1.用数组储存图片的数据 2.v-bind指令可以设置元素属性 e.g.src 语法 v-bind:属性名表达式 简写【实际开发常用】 :属性名表达式 3.v-show和v-if都可以切换元素的显示/隐藏状态 (1)频繁切换显示/隐藏的dom元素用 v…

前端必备技能——轮播图(原生代码+插件)

你是否在为页面平平无奇而烦恼&#xff1f; 你是否在为页面特效过于简单而苦恼&#xff1f; 你是否也在为同是前端小白而别人的页面却比自己的更加精美&#xff1f; 如果你看到这篇博客&#xff0c; 你就已经赢在起跑线啦~ 因为&#xff01;&#xff01;&#xff01; 这篇…

轮播图的多种实现及原理

【写在前面】 最近&#xff0c;在自己的项目中遇到了很多轮播图。 当然&#xff0c;这里的很多&#xff0c;并非数量多&#xff0c;指的是种类很多&#xff0c;即多种实现。 然后我觉得有不少小技巧&#xff0c;就决定写一篇文章讲解一下。 本篇主要内容&#xff1a; 1、轮播图…

网页轮播图(详细版)

在网页中&#xff0c;我们经常会看到各种轮播图的效果&#xff0c;它们到底是怎样实现的呢&#xff1f;今天&#xff0c;我们就一起来看一下&#xff01;首先&#xff0c;我们需要准备若干张图片&#xff0c;在这里我准备了五张图片。 功能需求&#xff1a; 鼠标经过轮播图模块…

轮播图 (无缝轮播图)

1.无缝轮播核心: 在最后多加一张第一张图, 当达到最后一张t1的时候 一瞬间将ul拉回到0的位置 结构&#xff1a; <div class"wrap"><ul><li><img src"./image/t1.png" alt""></li><li><img src"./i…

JS来实现轮播图(走马灯)可左右切换图片,鼠标移入会停止轮播

效果一&#xff1a; 会自动进行轮播&#xff0c;当鼠标进入轮播图区域会停止轮播&#xff0c;点击左右箭头可以向前、向后进行切换图片 效果二&#xff1a; 这种效果比第一种效果简单&#xff0c;只要删除一些代码和修改一些样式即可。 实现原理 轮播图整体是放在ul里的&…

oracle nvl函数 mysql_关于Oracle数据库中的nvl函数

以前将数据库查询结果展示在页面时&#xff0c;对于值null的字段&#xff0c;总是要判断下&#xff0c;如果为null&#xff0c;就显示ldquo;rdquo;&#xff0c;突然发现这个方法好笨 以前将数据库查询结果展示在页面时&#xff0c;对于值null的字段&#xff0c;总是要判断下&am…

nvl 函数初识

根据bi业务逻辑写sql时&#xff0c;在写法上有些区别&#xff0c;我习惯用case when &#xff0c;没有用过nvl所以试一试 bi某一列的业务如下&#xff1a; 我用sql分别试了case when 和 nvl &#xff0c;得到的结果是一致的 &#xff0c; 使用nvl函数的部分sql&#xff1a; …

MySQL中创 NVL 函数

NVL的定义 NVL(s1, s2)&#xff1a;当s1为null时&#xff0c;返回s2&#xff0c;否则返回s1。 SELECT NVL(S, R) FROM DUAL; -- S SELECT NVL(NULL, R) FROM DUAL; -- RNVL方法的兼容策略 第一种&#xff1a;用 case when 代替 NVL&#xff0c;这种方法代码改造量较大&am…

Xp 激活

2019独角兽企业重金招聘Python工程师标准>>> 为了在xp下测试一键安装 支持多语言、多用户、多数据库、完美URL之路过秋天版博客发布[绝对有杀伤力的博客] 这两天为xp激活折腾了不少时间,在不断用ghost还原来还原去的,原因就是我有一张OEM版本的系统,正常方式的…

Windows XP Professional With SP3 VOL[MSDN原版]+正版密钥

Windows XP Professional简体中文版,这是一个中国人最熟悉不过的操作系统了(也有人称它一个最适合中国人的操作系统)。Windows XP 由于其出色的安全性、可靠性、易用性、高性能,使它获得了巨大的成功,直至今天它仍然是全球使用率最高的操作系统。 下面我们来说说…