巧用数组制作图片切换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 相关文章推荐
js的event详解。
Sep 06 Javascript
从阿里妈妈发现的几个不错的表单验证函数
Sep 21 Javascript
javascript  Error 对象 错误处理
May 18 Javascript
js为数字添加逗号并格式化数字的代码
Aug 23 Javascript
jQuery Select下拉框操作小结(推荐)
Jul 22 Javascript
JS实现最简单的冒泡排序算法
Feb 15 Javascript
用React-Native+Mobx做一个迷你水果商城APP(附源码)
Dec 25 Javascript
JavaScript作用域、闭包、对象与原型链概念及用法实例总结
Aug 20 Javascript
Vue 组件参数校验与非props特性的方法
Feb 12 Javascript
微信小程序在其他页面监听globalData中值的变化
Jul 15 Javascript
Vuejs中的watch实例详解(监听者)
Jan 05 Javascript
Vue 图片压缩并上传至服务器功能
Jan 15 Javascript
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连接SQLServer2005的实现方法(附ntwdblib.dll下载)
2012/07/02 PHP
使用Appcan客户端自动更新PHP版本号(全)
2015/07/31 PHP
深入理解PHP类的自动载入机制
2016/09/16 PHP
PHP 接入支付宝即时到账功能
2016/09/18 PHP
当jQuery遭遇CoffeeScript的时候 使用分享
2011/09/17 Javascript
url参数中有+、空格、=、%、&amp;、#等特殊符号的问题解决
2013/05/15 Javascript
Firefox和IE兼容性问题及解决方法总结
2013/10/08 Javascript
JavaScript fontcolor方法入门实例(按照指定的颜色来显示字符串)
2014/10/17 Javascript
浅谈JavaScript中Date(日期对象),Math对象
2015/02/05 Javascript
剖析Node.js异步编程中的回调与代码设计模式
2016/02/16 Javascript
个人网站留言页面(前端jQuery编写、后台php读写MySQL)
2016/05/03 Javascript
JS产生随机数的几个用法详解
2016/06/22 Javascript
JS for...in 遍历语句用法实例分析
2016/08/24 Javascript
jQuery实现导航滚动到指定内容效果完整实例【附demo源码下载】
2016/09/20 Javascript
教你用十行node.js代码读取docx的文本
2017/03/08 Javascript
nodejs制作爬虫实现批量下载图片
2017/05/19 NodeJs
element-ui 表格数据时间格式化的方法
2018/08/24 Javascript
[00:35]DOTA2上海特级锦标赛 Newbee战队宣传片
2016/03/03 DOTA
Python中模拟enum枚举类型的5种方法分享
2014/11/22 Python
python3+PyQt5实现使用剪贴板做复制与粘帖示例
2017/01/24 Python
Python基于回溯法子集树模板解决找零问题示例
2017/09/11 Python
Django-Model数据库操作(增删改查、连表结构)详解
2019/07/17 Python
Python实现自动访问网页的例子
2020/02/21 Python
python实现梯度下降算法的实例详解
2020/08/17 Python
Python实现中英文全文搜索的示例
2020/12/04 Python
什么是SCM(软件配置管理)
2014/08/16 面试题
浪费资源的建议书
2014/03/12 职场文书
个人贷款担保书
2014/04/01 职场文书
促销活动计划书
2014/05/02 职场文书
关于爱国的标语
2014/06/24 职场文书
大型公益活动策划方案
2014/08/20 职场文书
个人存款证明书
2014/10/18 职场文书
小学优秀教师事迹材料
2014/12/16 职场文书
高考1977观后感
2015/06/04 职场文书
《认识钟表》教学反思
2016/02/16 职场文书
Java中的Kafka为什么性能这么快及4大核心详析
2022/09/23 Java/Android