2017-01-14 2 views
-1

У меня есть простой HTML элемент, который содержит число, представляющее собой количество продукта ...HTML/JS Как настроить (Count Down) Количество продуктов

<h1>Product QTY</h1> 
<div id=“prod-qty”> 
    <div> 
    <span class=“qty”>57</span> 
    <div class="smalltext">Left In Stock</div> 
    </div> 
</div> 
  1. Как я могу использовать JS, чтобы уменьшить это число 1 каждые 15 секунд?
  2. Как я могу использовать JS для уменьшения этого числа на 1-3 случайным образом каждые 15-30 секунд?
+0

посмотрите на это: http://stackoverflow.com/q/20618355/2715720 – rala

+1

Заменить все '' '' '' '' '. В противном случае вы столкнетесь с некоторыми проблемами. – Xufox

ответ

0

Этот код должен делать то, что вы хотите:

<h1>Product QTY</h1> 
<div id=“prod-qty”> 
    <div> 
    <span class=“qty” id="qty"></span> 
    <div class="smalltext">Left In Stock</div> 
    </div> 
</div> 

<script> 
    var qty = 57 
    var qtyId = document.getElementById("qty"); 

    setQty(qty); 

    function setQty(qty) 
    { 
     qtyId.innerHTML = qty; 

     if (qty==0) return; 

     var parts = Math.floor((Math.random() * 3) + 1); 
     if (parts > qty) parts = qty; 

     var msec = Math.floor(((Math.random() * 15) + 15)*1000); 

     qty -= parts; 

     setTimeout(function() { 
      setQty(qty); 
     }, msec) 
    } 
</script> 

Каждый раз, когда функция setQty называется величина обновляется, randomley количество (1-3) для следующего обновления вычитали и вызова to setQty запускается с помощью функции callBack в случайном времени (15-30 с).

0

Это должно дать вам отправную точку

var runEvery = 15 * 1000; //seconds; 
window.setInterval(function(){ 
    var elem = $("#prod-qty .qty"); 
    var decrease = 1; 
    var value = +elem.text() - decrease; 
    if(value <= 0) { 
     value = 0; 
    } 
    elem.text(value); 
}, runEvery); 

Для генерации случайных значений для декремента и частоты выполнения проверки reference.

Смежные вопросы