首页 新闻 会员 周边

我这样遍历li,然后依次点击使其产生颜色的变化怎么,我给了数组存储颜色就没有起作用?

0
悬赏园豆:5 [已关闭问题] 关闭于 2016-08-21 10:02

我单独给个颜色没有错,但是给了数组,就出问题了

温故-知新的主页 温故-知新 | 初学一级 | 园豆:20
提问于:2016-08-21 09:20
< >
分享
所有回答(3)
0

超出颜色数组的的长度

悦光阴 | 园豆:2251 (老鸟四级) | 2016-08-21 09:31

都是三个li,三种颜色,超出的

支持(0) 反对(0) 温故-知新 | 园豆:20 (初学一级) | 2016-08-21 09:35

@温故-知新:  你这是每次都给这三个设置相同的颜色,应该是每个li设置不同的颜色

支持(0) 反对(0) 悦光阴 | 园豆:2251 (老鸟四级) | 2016-08-21 09:54

@悦光阴: 我又留一个border来区分,

支持(0) 反对(0) 温故-知新 | 园豆:20 (初学一级) | 2016-08-21 09:57

@温故-知新: 从你的这段代码中,background 确实不会变,每次点击都是颜色数组的最后一个颜色

支持(0) 反对(0) 悦光阴 | 园豆:2251 (老鸟四级) | 2016-08-21 10:00

@悦光阴: 解决了

支持(0) 反对(0) 温故-知新 | 园豆:20 (初学一级) | 2016-08-21 10:01
0

调试打断点.看数组和从数组中取出的值.而且你这box是什么东西?哪里来.

吴瑞祥 | 园豆:29449 (高人七级) | 2016-08-21 09:47

li就是那三个小方块box就是那个大矩形粉色的,就是通过点击改变颜色

支持(0) 反对(0) 温故-知新 | 园豆:20 (初学一级) | 2016-08-21 09:52
0

作用于的问题:修改后

 for (var i = 0; i < l.length; i++) {
        (function (i) {
            l[i].onclick = function () {
                box.style.background = a[i];
            }
        }(i));
    }

温故-知新 | 园豆:20 (初学一级) | 2016-08-21 10:02
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册