Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   увеличение чисел (https://javascript.ru/forum/css-html/75054-uvelichenie-chisel.html)

javascrip 29.08.2018 13:58

увеличение чисел
 
подскажите как сделать анимированное увеличение числа на сайте ?

например 100000000.00 и чтобы оно постоянное увеличивалось, только только не по 0.01, а рандомно по от 0.01 до 0.99 или с определенным интервалом например 0.27, и чтобы в зависимости от увеличения общее число тоже увеличивалось

j0hnik 29.08.2018 14:15

<div id="num">100000000.00</div>
	<script>
var rnd =(min, max)=> (Math.random() * (max - min) + min);
(function up(){
	num.textContent = (num.textContent*1 + rnd(0.01, 0.99)).toFixed(2);
	setTimeout(up,270);
})();
	</script>

javascrip 30.08.2018 13:41

круто) спасибо

javascrip 30.08.2018 13:59

не работает, если число другое поставить ( не 100000000.00

javascrip 30.08.2018 14:00

и число будет разделено запятыми 234,345,567.00, хотя бы чтобы менялось до последних 3 чисел

j0hnik 30.08.2018 14:04

<div>234,345,<span id="num">567.00</span></div>
	<script>
var rnd =(min, max)=> (Math.random() * (max - min) + min);
(function up(){
	num.textContent = (num.textContent*1 + rnd(0.01, 0.99)).toFixed(2);
	setTimeout(up,270);
})();
	</script>


да это очевидно в JS нельзя так числа записывать

j0hnik 30.08.2018 14:28

<div id="num">234,345,567.00</div>
	<script>
var rnd =(min, max)=> (Math.random() * (max - min) + min);
(function up(){
	var arr = [];
  var value = ((num.textContent.replace(/,/g, '')*1 + rnd(0.01, 0.99)).toFixed(2)+'').split('.');
  while (value[0] !== '') {
  	arr.unshift(value[0].slice(-3));
  	value[0] = value[0].slice(0, -3);
  }
	num.textContent = arr.join(',')+'.'+value[1];
	setTimeout(up,270);
})();
	</script>

рони 30.08.2018 14:36

javascrip,
<div id="num"></div>
<script>
 var n = 234345567;
 +function b()
 {
    n += Math.random() * .98 + .01;
    num.textContent = n.toFixed(2).replace(/\B(?=(\d{3})+(?!\d))/g,',');
    setTimeout(b,270)
 }()
</script>

Aetae 30.08.2018 14:41

рони, Math.random() + toFixed(2) может периодически выдавать рост на 0.00, что не соответстует условию задачи.)

рони 30.08.2018 15:00

Aetae,
:) ок! пост №8 исправлен


Часовой пояс GMT +3, время: 04:50.