来回循环播放数组

时间:2013-09-05 19:15:34

标签: javascript

我很尴尬地问这个问题这么简单,但我无法弄清楚,从学校开始已经有一段时间了。

这是javascript,但问题实际上是一个数学问题。除了jquery,我正在做一个没有库的图库。基本上找到下一个图像并将其显示出来。

这是sorta sudo代码

var array = ["image1", "image2" ,"image 3"];
var currentImage = 0;
var imageMax = 3;

function next(){
    currentImage = (currentImage + 1)%imageMax;
}

//the next I got but the prev i can't figure it out


function pref(){
    currentImage = (currentImage -1)%imageMax; //??? i dont know

}

所以,如果我在第一张图片0,当我点击上一张时,我想要在索引2

  • next应该012012012012…
  • prev应循环0210210210210…

1 个答案:

答案 0 :(得分:7)

你可以说:

currentImage = (imageMax + currentImage - 1) % imageMax;

在执行模数运算符之前添加imageMax会处理在减去1之后imageMax将小于零的情况。