使用setinterval在最终数字前显示随机数字
Displaying random digits before final number with setinterval
我有3个div (#digit1, #digit2, #digit3),代表一个已知数字的3位数字(例如:459)。我想在显示实际数字之前,为每个数字显示从0到9的20个随机数(每100毫秒)。
使用jQuery,我可以显示第一个数字如下:
function displayInterval(callback,currentnumber) {
x = 0;
var interval = window.setInterval(function () {
callback();
if (++x === 20) {
window.clearInterval(interval);
$("#digit1").html(currentnumber);
}
}, 100);
}
var number1="4";
var number2="5";
var number3="9";
displayInterval(function () {
var randomnumber=Math.floor(Math.random()*10);
$("#digit1").html(randomnumber);
},number1);
如果我再增加2个调用displayInterval,它只适用于1个数字,其他两个永远显示随机数字。
提前感谢您的帮助!
注意:以上只是我需要的一个简化的例子。我的数字可以有1到6位数字,如果有超过3位数字(例如:12450),则必须放置空格,这就是为什么我需要将每个数字放在单独的div中。
应该使用数组来存储数字。在每三个数字之间间隔一个空格。
jsFiddle Live DEMO
你应该像你在问题中所说的那样为每个数字设置一个div(查看演示)。
把你的JavaScript改成这样,也可以看到演示的HTML代码。
function displayInterval(callback) {
x = 0;
var interval = window.setInterval(function() {
callback();
if (++x === 20) {
window.clearInterval(interval);
var nums = $("div[num]");
var max = $("div[num]").reverse().attr('num');
var i = max, j=1;
$.each( nums, function( key, value ) {
if(j%3==0) {
$("div[num='"+i+"']").html(" "+$(this).attr("value"));
} else {
$("div[num='"+i+"']").html($(this).attr("value"));
}
i--;j++;
});
}
}, 100);
}
displayInterval(function () {
var nums = $("div[num]");
var max = $("div[num]").reverse().attr('num');
var i = max, j=1;
$.each( nums, function( key, value ) {
var randomnumber=Math.floor(Math.random()*10)+"";
if(j%3==0 && i != max) {
$("div[num='"+i+"']").html(" "+randomnumber);
} else {
$("div[num='"+i+"']").html(randomnumber);
}
i--;j++;
});
});
相关文章:
- 显示数字,然后每5秒随机更改一次(javascript)
- Javascript-如何从长度有时不是静态的随机字符串中获得3位数字
- 如果随机数字是3-Javascript的倍数,则将表单元格更改为红色
- 生成一个随机数字序列,然后用JavaScript在该序列后面附加一个大写字母
- 将随机整数分配给数组中的项,summa应该是一个固定的数字
- 如何将52个随机生成的数字打印到控制台
- 如何从自动填充随机数字的下拉菜单中生成一组文本框
- 从1-9之间的随机数字列表中选出3个相同的数字
- 如果语句是假的 JavaScript,则再次随机化数字
- 在节点中生成随机 32 位数字
- 使用 php(?) 在每个服务器日随机增加数字值
- 数字游戏 - 随机化
- Javascript - 如何使按钮生成 1-12 的随机整数,并让按钮不断产生相同的数字
- JavaScript 中的随机字母数字字符串
- 将每个选定的值替换为随机字母/数字
- 如何在任意范围内随机选择数字并使用 JavaScript 数组相加
- Jquery随机隐藏2个数字,而不重复前一个数字
- 根据数字和计数从 0 到 1 获取“随机”数
- I'我试图创建一个函数,将范围(0-100)内的三个数字随机化,并打印最大的一个
- 为数据库生成唯一的随机alpha数字随机字符串