巧用数组制作图片切换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将long日期格式转换为标准日期格式实现思路
Apr 07 Javascript
使用JS+plupload直接批量上传图片到又拍云
Dec 01 Javascript
jQuery使用之标记元素属性用法实例
Jan 19 Javascript
javascript+canvas实现刮刮卡抽奖效果
Jul 29 Javascript
BootStrap 智能表单实战系列(五) 表单依赖插件处理
Jun 13 Javascript
利用Angularjs和原生JS分别实现动态效果的输入框
Sep 01 Javascript
关于验证码在IE中不刷新的快速解决方法
Sep 23 Javascript
Jquery把获取到的input值转换成json
May 15 jQuery
JS 60秒后重新发送验证码的实例讲解
Jul 26 Javascript
配置一个vue3.0项目的完整步骤
Apr 26 Javascript
JavaScript中常用的3种弹出提示框(alert、confirm、prompt)
Nov 10 Javascript
基于vuex实现购物车功能
Jan 10 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 cli 小技巧
2013/06/03 PHP
PHP多文件上传类实例
2015/03/07 PHP
PHP中数据类型转换的三种方式
2015/04/02 PHP
PHP简单实现防止SQL注入的方法
2018/03/13 PHP
javascript Demo模态窗口
2009/12/06 Javascript
JavaScript获得页面base标签中url的方法
2015/04/03 Javascript
javascript实现验证IP地址等相关信息代码
2015/05/10 Javascript
Angular.js与Bootstrap相结合实现表格分页代码
2016/04/12 Javascript
Web前端新人笔记之jquery入门心得(新手必看)
2016/05/17 Javascript
浅谈jquery选择器 :first与:first-child的区别
2016/11/20 Javascript
jQuery EasyUI 组件加上“清除”功能实例详解
2017/04/11 jQuery
Ionic2开发环境搭建教程
2020/08/20 Javascript
vue中如何实现变量和字符串拼接
2017/06/19 Javascript
详解Vue.js之视图和数据的双向绑定(v-model)
2017/06/23 Javascript
原生javascript实现文件异步上传的实例讲解
2017/10/26 Javascript
JavaScript生成一个不重复的ID的方法示例
2019/09/16 Javascript
Node.js API详解之 assert模块用法实例分析
2020/05/26 Javascript
vue中路由跳转不计入history的操作
2020/09/21 Javascript
python数据库操作常用功能使用详解(创建表/插入数据/获取数据)
2013/12/06 Python
Python实例之wxpython中Frame使用方法
2014/06/09 Python
使用Python3编写抓取网页和只抓网页图片的脚本
2015/08/20 Python
Python AES加密模块用法分析
2017/05/22 Python
windows 下python+numpy安装实用教程
2017/12/23 Python
django框架使用views.py的函数对表进行增删改查内容操作详解【models.py中表的创建、views.py中函数的使用,基于对象的跨表查询】
2019/12/12 Python
Python常用库大全及简要说明
2020/01/17 Python
Python使用Pygame绘制时钟
2020/11/29 Python
css3绘制天猫logo实现代码
2012/11/06 HTML / CSS
基于css3的属性transition制作菜单导航效果
2015/09/01 HTML / CSS
可能这些是你想要的H5软键盘兼容方案(小结)
2019/04/23 HTML / CSS
皇家阿尔伯特瓷器美国官网:Royal Albert美国
2020/02/16 全球购物
餐厅采购员岗位职责
2014/03/06 职场文书
校长竞聘演讲稿
2014/05/16 职场文书
项目经理任命书内容
2014/06/06 职场文书
大专学生求职信
2014/07/04 职场文书
学生违纪检讨书200字
2014/10/21 职场文书
教学副校长工作总结
2015/08/13 职场文书