个人学习,练习代码。欢迎批评指正。
在本地操作,轮播图片时,有时需要两张以上图片轮播,即一组一组的切换,一张一张的取太麻烦,于是想到是否可以存储在数组中去调用呢。
于是找打了一个方法:
1.定义一个数组(存放图片地址)
imgArr = [['img/01.jpg','img/02.jpg','img/03.jpg','img/04.jpg'],['img/05.jpg','img/06.jpg','img/07.jpg','img/08.jpg'],['img/09.jpg','img/10.jpg','img/11.jpg','img/12.jpg']];
如上建立了一个二位数组,存放了三组图片以备用;
2.定义一个函数(将数组转换为image对象)
function trImg(arr){ var imgAll = []; <span style="white-space:pre"> </span>//定义一个空数组用于存放转换后的对象 for(var i in arr){ imgAll[i]=[];<span style="white-space:pre"> </span>//二维数组(很重要) for(var j in arr[i]){ imgAll[i][j] = new Image();<span style="white-space:pre"> </span>//将新数组的每个对象定义为图片对象 imgAll[i][j].src = arr[i][j];<span style="white-space:pre"> </span>//定义图片对象的地址为原数组中的图片地址 } } return imgAll; }
3.检查生成的对象
alert(imgAuto[0][0]);弹出Object HTMLImageElement
已经将我们创建的数组地址转换为图片对象了。