我有一个简单的html元素,其中包含一个代表产品数量的数字......
<h1>Product QTY</h1>
<div id=“prod-qty”>
<div>
<span class=“qty”>57</span>
<div class="smalltext">Left In Stock</div>
</div>
</div>
答案 0 :(得分: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。
答案 1 :(得分: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)用于减去下一次更新,并且在一个randomely时间内使用callBack函数启动对setQty的调用(15- 30 s)。