我試圖只在頁面上發生某些變化時才運行$ .post()腳本。如果發生同樣的事情,那麼腳本應該只運行一次。如果有變化,那麼腳本應該運行一次 - 不要重複。該腳本放置在每5秒運行一次的setInterval函數中。當有東西發生變化時,在線運行JavaScript/Jquery腳本
這是我到目前爲止的一個例子。
setInterval(function(){
var status = "";
$(selector).each(function(key,val){
if($(val)[0].className == "A")
{
status = "online";
}
else
{
status = "offline";
}
$.post("url",{status:status});
});
},5000);
在這種情況下,$。員額腳本將運行每5秒。甚至如果狀態==「脫機」連續20次。即使如果狀態==「在線」連續20次。
關於如何運行$ .post()腳本只有一次而不是20次的任何想法?我正在考慮一些if/else陳述..但我迷失了細節...
您是否嘗試創建一個數組(它將具有狀態和其他數據),然後傳遞給將在一次調用中的服務器 –
您是否可以更具體地說明「僅當發生了某些變化」?無論如何,它是否必須每五秒進行一次Ajax調用? –
爲什麼不比較新值和舊值,如果不同,請調用'$ .post'? – Joseph