javascript - 请教一个js方面的问题
PHPz
PHPz 2017-04-10 15:44:18
[JavaScript讨论组]

我想实现的效果是当点击按钮的时候,对p切换不同的背景颜色,
事先创建了一个数组存放几个颜色值,但是却运行不起来,有FF查看的时候也没有报错,请教下是什么原因 谢谢!

PHPz
PHPz

学习是最好的投资!

全部回复(5)
天蓬老师

你代码这样写要实现什么功能?
是要点下按钮切换一个颜色,再点击一下显示另一个,循环往复?
如果想要这样的话,
去掉for循环

oBtn.onclick=function(){
    var color=bgcolor.shift();
    bgcolor.push(color);
    op.style.backgroundColor= color;
    
}

或者

var i=0;
oBtn.onclick=function(){
    if(i>=bicolor.length){
        i=0;
    }
    op.style.backgroundColor= bgcolor[i];
    i++;
}
ringa_lee

你的代码需要放在window.onload=function里面啊

怪我咯

修改将for循环中变量i的实时值用闭包传入到onclick中,不然你得到的i全部等于3,所得到的背景色都是red

大家讲道理

逻辑不对,for了一圈,最后还是onclick就变成一种红色。其实不需要for,只需每次click 取0到colors.length-1之间的随机数i,然后background-color=colors[i]

PHP中文网

同问,我也不懂

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号