javascript - 如何通过每次点击选择数组的新索引

标签 javascript jquery arrays

我有一个包含颜色数组的函数,并且有一个按钮和一个文本标签。因此,每次单击后,该函数都会获取数组的当前索引,将其显示在文本中,并将索引号加一,以便下次显示下一个索引。

这是我的代码:

var mycolor = 0;

var color = function() {
    var list = ["red", "blue", "green"];    
    return list[mycolor];
    mycolor++;
};

function run(){
    $(".demo").text(color());
}

JSFIDDLE

有什么想法吗?如何修复它?目前它只显示第一个索引,不会更新变量。

最佳答案

这是为了

var mycolor = 0;
var maxcolor = 0
var color = function() {
    var list = ["red", "blue", "green"];    
    maxcolor = list.length;
    if((mycolor + 1) > maxcolor)
    {
        mycolor = 0
    }
    return list[mycolor++];
    
};

function run(){
    $(".demo").text(color());
}

无限版本。

关于javascript - 如何通过每次点击选择数组的新索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26289482/

相关文章:

javascript - 按最长公共(public)起始子串对字符串进行分组

javascript - jquery延迟mouseOut效果?

c - 如何不使用队列,堆栈或数组来解决此问题?

database - 违反了第一范式,可以满足我的目的吗?

javascript - 使用 MySQL、PHP、AJAX 将值发布到数据库,而不使用 jQuery

javascript - Extjs 使用复选框模型将单个项目拖放到网格上

ajax - 中止 ajax 请求的执行

我可以静态分配这个字符串吗?如何?

javascript - kinectJs 两个图像的旋转

jquery - 多子菜单在 jquery 中无法正常工作