Jquery 我如何知道正在处理的交通信号灯?

Jquery 我如何知道正在处理的交通信号灯?,jquery,Jquery,我有两个交通灯,它们各自的相位工作。 您可以访问我的演示,或查看源代码: $(function() { traffic_lights = [ [{color:'green' ,time:5 }, {color:'yellow' ,time:3 }, {color:'red' ,time:5 },], [{color:'green' ,time:10 }, {color:'yellow' ,time:6 },

我有两个交通灯,它们各自的相位工作。 您可以访问我的演示,或查看源代码:

$(function() {
    traffic_lights = [
        [{color:'green' ,time:5 },
        {color:'yellow' ,time:3 },
        {color:'red' ,time:5 },],

        [{color:'green' ,time:10 },
        {color:'yellow' ,time:6 },
        {color:'red' ,time:10 },],
    ]


    for (var a = 0, f; a < traffic_lights.length; a++) {
        var g = traffic_lights[a];
        f = $("#c" + a);
        (function (a, d) {
            var b = 0,
                time = 0;
            return function s() {
                time || (a.css({"background-color": d[b].color}), time = d[b].time, b = ++b % d.length);
                a.html(time);
                time--;
                window.setTimeout(s, 1e3);
            }
        })(f, g)();
    }

})
$(函数(){
交通灯=[
[{颜色:绿色,时间:5},
{颜色:黄色,时间:3},
{颜色:'red',时间:5},],,
[{颜色:绿色,时间:10},
{颜色:黄色,时间:6},
{颜色:'red',时间:10},],,
]
对于(var a=0,f;a

如何知道正在处理哪个交通灯(span id)及其颜色?

如果正确,span是
f
,因此其id属性是
“c”+a
。您可以使用'f.css('background-color')获得其背景色

编辑:问题真的不清楚,你对哪个范围和生命周期感兴趣?您可能应该在
s
中使用
a
而不是
f
。就像你已经在做的那样。所以我对你认为你有什么问题感到困惑