我想重复代码,但不知道如何使用循环
I want to repeat code but don't know how t use loops
我有这个代码:
.js:
function change_color(color) {
$("body").animate({ backgroundColor:color }, '1000');
}
setTimeout(function () {
change_color('#4AC900'
);
}, 500);
setTimeout(function () {
change_color('#964514'
);
}, 1500);
setTimeout(function () {
change_color('#EE0000'
);
}, 1500);
setTimeout(function () {
change_color('#FFE303'
);
}, 1500);
setTimeout(function () {
change_color('#8E388E'
);
}, 1500);
setTimeout(function () {
change_color('#FF00AA'
);
}, 1500);
我想反复使用它,但把它放在一个 while 循环中只会使网站崩溃,有人可以帮忙吗?
这是网站...这是我的弟弟网站不是我的...http://timothy.techbytbone.com/isaac.php
var colors = ['#4AC900', '#964514', '#EE0000', '#FFE303', '#8E388E', '#FF00AA'],
len = colors.length,
i;
for (i = 0; i < len; i++) {
(function(i, color) {
setTimeout(function () {
change_color(color);
}, (i + 1) * 500);
})(i, colors[i]);
}
这就是
你所需要的:
js小提琴演示
var c = 0;
var colors = ['#4AC900','#964514','#EE0000','#FFE303','#8E388E','#FF00AA'];
(function loop(){
$('body').stop().animate({backgroundColor : colors[c++%colors.length] }, 1000, loop);
})();
(请注意,您需要使用 jQuery UI 对 CSS background-color
属性进行动画处理(
var colors = {'#4AC900': 500,
'#964514': 1500,
// etc. Just continue with the color-millisecond combinations
}
for(key in colors) {
setTimeout(function () {
change_color(key);
}, colors[key]);
}
您的循环崩溃,因为您无法在浏览器加载时设置所有必要的超时。这是应该可以工作的代码版本。
var colors = ['#4AC900', '#964514', '#EE0000', '#FFE303', '#8E388E', '#FF00AA'];
var currentColorIndex = 0;
var scheduleChange;
scheduleChange = function() {
change_color(currentColorIndex);
currentColorIndex = (currentColorIndex + 1) % colors.length
setTimeout(scheduleChange, 1000);
};
setTimeout(scheduleChange, 500);
function change_color(color) {
$("body").animate({ backgroundColor:color }, '1000');
}
setTimeout(function() {
change_color('#4AC900')
}, 500);
colors = ['#964514', '#EE0000', '#FFE303', '#8E388E', '#FF00AA']
interval = setInterval(function() {
if (! a.length) {
return clearInterval(interval);
}
change_colors(a.shift());
}, 1500);
玩得愉快。你应该了解闭包,以免弄乱setIntervals。有大量的库可以动画颜色和其他东西。我可以推荐墨菲斯。
相关文章:
- 使用.on动态添加jquery/js不知道的html元素
- 我正在尝试使用多个2数组来绑定svg圆的数据,但不知道如何绑定
- 可以'我不知道如何使用谷歌图表API显示2个表
- 可以'我不知道如何使用jQuery表单和.length
- 不知道要使用哪个 JQuery 插件
- 不知道如何使用 ajax 将 html 输出到页面上
- 我不知道如何在angular2中包含js文件并使用jquery
- 我有一个应用程序,我想在画布上生成 3D 模型,但我不知道要使用哪个工具
- 我想重复代码,但不知道如何使用循环
- 是maven qunit插件死了还是我不知道如何使用它
- 新手,不知道如何使用jQuery在Rails应用程序中保存HTML中可拖动项目的位置
- 不知道如何使用AJAX
- getElementById(str)函数如何工作(不知道如何使用它,以及函数步骤如何)
- 我不知道如何使用session-express来保存会话
- 不知道如何使用ui-route
- 我不知道如何使用OnClick事件来改变正方形的颜色
- 不知道如何使用jquery的子函数和第一个函数
- JavaScript/不知道如何使用变量
- JQuery新手,不知道如何使用局部变量(使用greasemonkey)
- 不知道如何使用拖放jQuery插件