巧用数组制作图片切换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 相关文章推荐
关于ExtJS4.1:快捷键支持的问题
Apr 24 Javascript
Jquery通过Ajax访问XML数据的小例子
Nov 18 Javascript
关于javascript模块加载技术的一些思考
Nov 28 Javascript
浅谈javascript中字符串String与数组Array
Dec 31 Javascript
js实现照片墙功能实例
Feb 05 Javascript
原生js和jQuery写的网页选项卡特效对比
Apr 27 Javascript
解析微信JS-SDK配置授权,实现分享接口
Dec 09 Javascript
JS实现的简单图片切换功能示例【测试可用】
Feb 14 Javascript
Javascript面试经典套路reduce函数查重
Mar 23 Javascript
JS全角与半角转化实例(分享)
Jul 04 Javascript
vuex实现的简单购物车功能示例
Feb 13 Javascript
详解如何给React-Router添加路由页面切换时的过渡动画
Apr 25 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
我的群发邮件程序
2006/10/09 PHP
phpadmin如何导入导出大数据文件及php.ini参数修改
2013/02/18 PHP
关于PHP二进制流 逐bit的低位在前算法(详解)
2013/06/13 PHP
(PHP实现)只使用++运算实现加法,减法,乘法,除法
2013/06/27 PHP
PHP取整函数:ceil,floor,round,intval的区别详细解析
2013/08/31 PHP
CL vs ForZe BO5 第一场 2.13
2021/03/10 DOTA
js中获取事件对象的方法小结
2011/03/13 Javascript
ECMAScript6新增值比较函数Object.is
2015/06/12 Javascript
使用JavaScript制作一个简单的计数器的方法
2015/07/07 Javascript
javascript简易画板开发
2020/04/12 Javascript
详解为Angular.js内置$http服务添加拦截器的方法
2016/12/20 Javascript
基于canvas的二维码邀请函生成插件
2017/02/14 Javascript
AngularJS 支付倒计时功能实现思路
2017/06/05 Javascript
详解node服务器中打开html文件的两种方法
2017/09/18 Javascript
JavaScript 日期时间选择器一些小结
2018/04/02 Javascript
如何手写简易的 Vue Router
2020/10/10 Javascript
[55:45]DOTA2上海特级锦标赛D组败者赛 Liquid VS COL第一局
2016/02/28 DOTA
python多重继承实例
2014/10/11 Python
python批量导入数据进Elasticsearch的实例
2018/05/30 Python
python实现求两个字符串的最长公共子串方法
2018/07/20 Python
python实现桌面气泡提示功能
2019/07/29 Python
pyinstaller还原python代码过程图解
2020/01/08 Python
Keras中的多分类损失函数用法categorical_crossentropy
2020/06/11 Python
jupyter notebook远程访问不了的问题解决方法
2021/01/11 Python
h5封装下拉刷新
2020/08/25 HTML / CSS
SkinCeuticals官网:美国药妆品牌
2018/04/19 全球购物
介绍一下Make? 为什么使用make
2013/12/08 面试题
便利店投资的创业计划书
2014/01/12 职场文书
新学期校长寄语
2014/01/18 职场文书
大学活动总结范文
2014/04/29 职场文书
安全在我心中演讲稿
2014/09/01 职场文书
初中差生评语
2014/12/29 职场文书
2015大学自主招生自荐信范文
2015/03/04 职场文书
2015年文员个人工作总结
2015/04/09 职场文书
2015年保洁工作总结范文
2015/04/28 职场文书
漫画「日和酱的要求是绝对的」第3卷封面公开
2022/03/21 日漫