0
我有這個代碼偵聽一個套接字發射,然後每隔5秒開始一個間隔循環。間隔使用jquery將頁面上的文本更改爲從套接字發出的值。爲什麼在使用setInterval時,似乎有兩個值被設置爲單個變量?
socket.on("activeBid", function(data) {
$('#noActiveBid').hide();
$('#activeBid1').hide();
$('#activeBid').show();
$('#activeBidValue').text(data.activeBid);
setInterval(delayTime, 5000);
function delayTime() {
$('#ago2').text(moment(data.bidTime).fromNow());
}
});
的代碼被執行每5秒和一切正常,直到我發出另一個插座事件,造成新的數據值(data.bidTime)發送過來。舊的bidTime值停留在時間間隔內,並且新的bidTime值也正在增加,因此頁面上的文本每隔5秒在兩個值之間更改一次。爲什麼是這樣?
當我console.log data.bidTime值,然後導致另一個發射導致另一個值被髮送,我得到兩個不同的值每隔5秒記錄到控制檯。
這將是很好,如果你可以更新你的答案來說明如何清除的間隔。 – Soviut