巧用数组制作图片切换js代码


Posted in Javascript onNovember 29, 2016

在前面的文章中,我们讲到了js中数组的具体操作,详见(Js对Array的各种操作总结),这里就不再做详细的讲解。今天主要的目的是如何用数组进行图片的简单左右切换。

       本文中的图片切换具体步骤如下: 

      第1步:简单的布局并设计基本的显示样式;
       第2步:通过js获取相关元素;
       第3步: 通过数组进行图片url和对应文字描述的存储;
       第4步:初始化:包括图片的初始化,显示图片数字以及对应文字的初始化等;
       第5步:点击按钮切换图片,编写对应的函数,其实就是数组的简单应用。
       接下来先看看效果图,然后进行对应的代码讲解。

巧用数组制作图片切换js代码

实现代码:

<!DOCTYPE html> 

<html lang="en"> 
<head> 
 <meta charset="UTF-8"> 
 <title>图片切换</title> 
 <style> 
 .box{ 
 width: 600px; 
 height:400px; 
 border: 10px solid #ccc; 
 position: relative; 
 margin: 40px auto 0; 
 } 
 .box a{ 
 width: 30px; 
 height: 30px; 
 background-color: #000; 
 border: 5px solid #fff; 
 position: absolute; 
 top:180px; 
 text-align: center; 
 font-size:25px; 
 font-weight: bold; 
 line-height: 30px; 
 color:#fff; 
 text-decoration: none; 
 filter: alpha(opacity:40); 
 opacity: 0.4; 
 } 
 .box a:hover{ 
 filter:alpha(opacity:80); 
 opacity:0.8; 
 } 
 .box #prev{ 
 left: 10px; 
 } 
 .box #next{ 
 right: 10px; 
 } 
 #text,#num{ 
 height: 30px; 
 line-height:30px; 
 width: 600px; 
 color:#fff; 
 position: absolute; 
 left: 0; 
 background-color: #000; 
 text-align: center; 
 filter: alpha(opacity:80); 
 opacity: 0.8; 
 margin:0; 
 } 
 .box #text{ 
 bottom: 0; 
 } 
 .box #num{ 
 top:0; 
 } 
 .box #img1{ 
 width: 600px; 
 height: 400px; 
 } 
 </style> 
 <script> 
 window.onload = function () { 
 var oPrev = document.getElementById("prev"); 
 var oNext = document.getElementById("next"); 
 var oText = document.getElementById("text"); 
 var oNum = document.getElementById("num"); 
 var oImg = document.getElementById("img1"); 
 
 var arrUrl = ['images/1.jpg','images/2.jpg','images/3.jpg','images/4.jpg']; 
 var arrText = ['文字1','文字2','文字3','文字4']; 
 
 //初始化 
 var num = 0; 
 function fnTab(){ 
 oNum.innerHTML = num + 1 + '/' + arrText.length; 
 oImg.src = arrUrl[num]; 
 oText.innerHTML = arrText[num]; 
 }; 
 fnTab(); 
 oPrev.onclick = function(){ 
 num --; 
 if( num == -1){ 
  num = arrUrl.length -1; 
 } 
 fnTab(); 
 }; 
 oNext.onclick = function(){ 
 num ++; 
 if(num == arrUrl.length){ 
  num = 0; 
 } 
 fnTab(); 
 }; 
 }; 
 </script> 
</head> 
<body> 
 <div class="box"> 
 <a id="prev" href="javascript:;"> < </a> 
 <a id="next" href="javascript:;"> > </a> 
 <p id="text">图片正在加载中……</p> 
 <span id="num">数量正在统计中……</span> 
 <img id="img1" src="../images/1.jpg" alt=""> 
 </div> 
</body> 
</html>

       这个例子很简单,主要就是对数组的简单读写以及对html的属性内容读写操作。其中需要注意的是,当我们点击下一张到最后一张图片或者点击上一张到第一张时,需要设置具体的数值变化,不=否则会越界,那么图片、数字和对应的问题就没有内容。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
用Javascript 获取页面元素的位置的代码
Sep 25 Javascript
js中判断用户输入的值是否为空的简单实例
Dec 23 Javascript
JavaScript获取表格(table)当前行的值、删除行、增加行
Jul 03 Javascript
JavaScript判断按钮被点击的方法
Dec 13 Javascript
javascript制作照片墙及制作过程中出现的问题
Apr 04 Javascript
javascript 判断一个对象为数组的方法
May 03 Javascript
JS设计模式之观察者模式实现实时改变页面中金额数的方法
Feb 05 Javascript
vue axios数据请求get、post方法及实例详解
Sep 11 Javascript
微信小程序解除10个请求并发限制
Dec 18 Javascript
微信小程序控制台提示warning:Now you can provide attr &quot;wx:key&quot; for a &quot;wx:for&quot; to improve performance解决方法
Feb 21 Javascript
微信小程序入门之绘制时钟
Oct 22 Javascript
vue3.0实现点击切换验证码(组件)及校验
Nov 18 Vue.js
JS插件plupload.js实现多图上传并显示进度条
Nov 29 #Javascript
文件上传插件SWFUpload的使用指南
Nov 29 #Javascript
jquery结合html实现中英文页面切换
Nov 29 #Javascript
基于Three.js插件制作360度全景图
Nov 29 #Javascript
jquery购物车结算功能实现方法
Oct 29 #Javascript
JavaScript微信定位功能实现方法
Nov 29 #Javascript
jQuery中的select操作详解
Nov 29 #Javascript
You might like
关于php mvc开发模式的感想
2011/06/28 PHP
PHP PDOStatement对象bindpram()、bindvalue()和bindcolumn之间的区别
2014/11/20 PHP
php中switch与ifelse的效率区别及适用情况分析
2015/02/12 PHP
(currentStyle)javascript为何有时用style得不到已设定的CSS的属性
2007/08/15 Javascript
js实现瀑布流的一种简单方法实例分享
2013/11/04 Javascript
表单提交前触发函数返回true表单才会提交
2014/03/11 Javascript
Nodejs Express4.x开发框架随手笔记
2015/11/23 NodeJs
谈谈javascript中使用连等赋值操作带来的问题
2015/11/26 Javascript
AngularJS中的Directive自定义一个表格
2016/01/25 Javascript
JavaScript程序中的流程控制语句用法总结
2016/05/23 Javascript
Vue.js第四天学习笔记
2016/12/02 Javascript
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
2016/12/14 Javascript
详解vue项目优化之按需加载组件-使用webpack require.ensure
2017/06/13 Javascript
Angular4绑定html内容出现警告的处理方法
2017/11/03 Javascript
Makefile/cmake/node-gyp中区分判断不同平台的方法
2018/12/18 Javascript
D3.js(v3)+react 实现带坐标与比例尺的散点图 (V3版本)
2019/05/09 Javascript
[01:14]TI珍贵瞬间系列(六):冠军
2020/08/30 DOTA
python常见数制转换实例分析
2015/05/09 Python
Python shutil模块用法实例分析
2019/10/02 Python
Python基于wordcloud及jieba实现中国地图词云图
2020/06/09 Python
解决Django响应JsonResponse返回json格式数据报错问题
2020/08/09 Python
Python获取excel内容及相关操作代码实例
2020/08/10 Python
一篇文章教你用python画动态爱心表白
2020/11/22 Python
Django搭建项目实战与避坑细节详解
2020/12/06 Python
基于html5绘制圆形多角图案
2016/04/21 HTML / CSS
大学四年规划书范文
2013/12/27 职场文书
管理心得体会
2013/12/28 职场文书
你的创业计划书怎样才能打动风投
2014/02/06 职场文书
教师求职信范文
2014/05/24 职场文书
宿舍标语大全
2014/06/19 职场文书
购房委托书范本
2014/09/18 职场文书
税务干部群众路线教育实践活动自我剖析材料
2014/09/21 职场文书
2014年采购工作总结
2014/11/20 职场文书
篮球赛闭幕式主持词
2015/07/03 职场文书
html+css合并表格边框的示例代码
2021/03/31 HTML / CSS
Python机器学习应用之工业蒸汽数据分析篇详解
2022/01/18 Python