目前我正在開發一個用戶通知警報消息功能。的jQuery/JavaScript的setInterval的
我設法利用setInterval
來控制我的Ajax調用(檢查是否有用戶的任何通知MSG)。但我的問題是,我只是想通知消息僅 頁面上出現一次(現在它在屏幕上顯示多個通知提醒MSG)。我知道你可以使用setTimeout
來使它只呼叫一次,但我還需要該頁面來檢查每5分鐘是否有新的通知消息警報。
第二個問題是有可能在第一輪調用Ajax調用瞬間,然後將所有其他電話每5分鐘?因爲我希望系統在每次登錄系統後立即檢查,然後每5分鐘進行一次檢查。
這裏是我的代碼
function getAjaxNotice() {
$.post("/async/getnotification", {},
function(response) {
var notice = $(response);
$("#notices").prepend(notice);
});
return false;
}
setInterval("getAjaxNotice()", 50000);
是的,我同意,在這種情況下,沒有理由將一個字符串傳遞給setInterval。除非有一些可以使用的情況,否則你應該嘗試傳遞一個函數給setInterval/setTimeout。我不確定傳入字符串是否會在引入「嚴格模式」時起作用,我認爲嚴格模式不允許使用eval。 – 2011-03-30 18:01:06