如何实现用js原生轮播图插件制作
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要介绍"如何实现用js原生轮播图插件制作",在日常操作中,相信很多人在如何实现用js原生轮播图插件制作问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"如何实现用
千家信息网最后更新 2026年11月02日如何实现用js原生轮播图插件制作
这篇文章主要介绍"如何实现用js原生轮播图插件制作",在日常操作中,相信很多人在如何实现用js原生轮播图插件制作问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"如何实现用js原生轮播图插件制作"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
调用时也只需要写一个DIV即可

调用的js部分配置内容:
传入轮播图需显示的位置(div)
传入图片和点击跳转的链接
话不多说,上代码
HTML
HTML文档内的
JS插件内容
// 两个参数,第一个轮播图区域,第二个是配置function bannerArea(areaDom, options) { var imgArea = document.createElement("div"); var numberArea = document.createElement("div"); var curIndex = 0;//第几张轮播图 var changeTimer = null; var changeDuration = 1000;//间隔 var timer = null; initImg();//创建一个区域来显示图片 initNumber();//创建区域显示角标 setStatus();//设置状态 autoChange();//自动切换 //下面是局部函数 //创建图片,并且设置样式 function initImg() { imgArea.style.width = "100%"; imgArea.style.height = "100%"; imgArea.style.display = "flex"; imgArea.style.overflow = "hidden"; for (let i = 0; i < options.length; i++) { var obj = options[i]; var img = document.createElement("img"); img.src = obj.imgUrl; img.style.width = "100%"; img.style.height = "100%"; img.style.margin = "0"; img.addEventListener("click", function () { location.href = options[i].link; }) imgArea.appendChild(img); } imgArea.addEventListener("mouseenter", function () { clearInterval(changeTimer); changeTimer = null; }) imgArea.addEventListener("mouseleave", function () { autoChange(); }) areaDom.appendChild(imgArea); } //创建角标元素和设置样式 function initNumber() { numberArea.style.textAlign = "center"; numberArea.style.marginTop = "-25px"; for (let i = 0; i < options.length; i++) { var sp = document.createElement("span"); sp.style.width = "12px"; sp.style.height = "12px"; sp.style.background = "lightgray"; sp.style.display = "inline-block"; sp.style.margin = "0 7px"; sp.style.borderRadius = "50%"; sp.style.cursor = "pointer"; sp.addEventListener("click", function () { curIndex = i; setStatus(); }) numberArea.appendChild(sp); } areaDom.appendChild(numberArea); } //设置角标区域状态 function setStatus() { //设置圆圈的背景颜色 for (var i = 0; i < options.length; i++) { if (i === curIndex) { //设置背景颜色为选择 numberArea.children[i].style.background = "rgb(222 57 57)"; } else { //非选择 numberArea.children[i].style.background = "lightgray";; } } //显示图片 var start = parseInt(imgArea.children[0].style.marginLeft); var end = curIndex * -100; var dis = end - start; var duration = 500; var speed = dis / duration; if (timer) { clearInterval(timer); } timer = setInterval(function () { start += speed * 20; imgArea.children[0].style.marginLeft = start + "%"; if (Math.abs(end - start) < 1) { imgArea.children[0].style.marginLeft = end + "%"; clearInterval(timer); } }, 20) } //自动切换 function autoChange() { if (changeTimer) { return; } changeTimer = setInterval(function () { if (curIndex === options.length - 1) { curIndex = 0; } else { curIndex++; } setStatus(); }, changeDuration) } }轮播图速度(切换时间)可在插件代码中 var changeDuration = 1000;//间隔 一句里调整
到此,关于"如何实现用js原生轮播图插件制作"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
图片
插件
区域
链接
制作
学习
元素
内容
参数
数组
切换
配置
两个
对象
属性
更多
样式
状态
背景
颜色
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网金融监管科技数据
互联网科技保险
互联网属科技
互联网为科技
高科技与互联网
为想互联网科技
互联网高科技股票
互联网巨头投资的硬核科技
安控科技rtu产品工业互联网
济南华为互联网科技产业总部基地
茂名市互联网科技产业园
玉溪互联网科技怎么选
东莞新华互联网科技学校
晋城互联网科技
广州千川互联网科技有限公司
云南省自由互联网科技有限公司
工业互联网科技成果转化
宁波跨境商互联网科技有限公司
互联网科技新闻
互联网时代高科技布局
河南云网互联网络科技有限公司
蓝思科技飞鸽互联网
科技互联网政务服务
奔汉互联网科技
互联网科技有限公司 翻译
佩信高科技互联网
汉立互联网科技有限公司联系电话
受益于互联网科技的高速发展
江苏互联网智能科技产品出厂价
六子台科技互联网展会