var imgs = ['1.jpg', '2.jpg','3.jpg'];
var idx = 0;
function resetImgs(dir){
var len = imgs.length;
switch(dir){
case 'PREV':
if(idx <= 0){
idx = len - 1;
_setPrevImgs(idx);
}else{
idx--;
_setPrevImgs(idx);
}
break;
case 'NEXT':
if(idx >= 0 && idx < len - 1){
_setNextImgs(idx);
idx++;
}else if(idx >= len - 1){
_setNextImgs(idx);
idx = 0;
}
break;
}
for(var i in imgs){
document.getElementById('img' + (Number(i) + 1)).src = imgs[i];
}
function _setNextImgs(index){
curImg = (index + 1) + '.jpg';
imgs.splice(0, 1);
imgs.push(curImg);
}
function _setPrevImgs(index){
curImg = (index + 1) + '.jpg';
imgs.splice(len - 1, 1);
imgs.unshift(curImg);
定义了一个数组,保存了图片的src信息。
调用resetImgs函数时,根据参数dir来判断是上一张图片还是下一张图片。
如果是上一张图片,就执行_setPrevImgs
如果是下一张图片,就执行_setNextImgs
这两个函数对curImg进行修改,改变curImg即当前图片的值。
不懂可以继续问~