2012-06-25 18 views
0

我正在嘗試使用setTimeout獲取我的一個小項目的通知,但它要求我獲取兩種類型的通知1. messages 2.global所以我必須編寫兩個函數,這是可能的使用兩個setTimeout下一個函數這裏是我編碼兩個setTimeout在一個函數下

// Message Notification Poll 


(function pollmsg() { 
    setTimeout(function() { 
     var demon = $('.msgnotimore').val(); 
     var page = "notimsg"; 
     var a = $('.gvpgvpxgvp').val(); 
     $.ajax({ 
      url: 'modules/notifications/beast.php?nid=' + demon + '&id=' + a + '&page=' + page, 
      success: function (html) { 
       if ($.trim(html) == 'no') {} 
       else { 
        $('.msgnotimore').remove(); 
        $('.notiloadmsg').prepend($(html).fadeIn('slow')); 
       } 
      }, 
      dataType: "html", 
      complete: pollmsg 
     }); 
    }, 60000); 
})(); 
// Global Notification Poll 
(function pollglobal() { 
    setTimeout(function() { 
     var demon = $('.globalnotimore').val(); 
     var page = "notiglobal"; 
     var a = $('.gvpgvpxgvp').val(); 
     $.ajax({ 
      url: 'modules/notifications/beast.php?nid=' + demon + '&id=' + a + '&page=' + page, 
      success: function (html) { 
       if ($.trim(html) == 'no') {} 
       else { 
        $('.globalnotimore').remove(); 
        $('.notiloadglobal').prepend($(html).fadeIn('slow')); 
       } 
      }, 
      dataType: "html", 
      complete: pollglobal 
     }); 
    }, 60000); 
})(); 
+1

你在問什麼沒有意義。也許你想將兩個'setTimeout'回調合併成一個? –

+0

不,我想使用兩個setimeout可以在那裏的命名通知。這是可能的,是否有任何其他方式來減少代碼 –

+0

你有兩個不同的setTimeouts都有相同的延遲。沒有理由不把它們合併成一個。如果你把它變成一個函數,你可以簡單地傳入你想要用作「惡魔」頁面和「a」的數據,那會更好。 –

回答

0

我想你問'可以有兩個setTimeouts一次運行'?

如果這是個問題,那麼答案是肯定的,你可以儘可能多地運行setTimeouts。我相信唯一的限制就是記憶。

+0

以及我想知道我編碼的更好的代碼,我的意思是使用一個功能,而不是2個不同的2個不同setTimeout這是可能的 –

+1

嗯,是的。您可以將兩個setTimeouts放在同一個函數的兩行中。例如在你的例子中刪除'})(); // Global Notification Poll (function pollglobal(){' –

相關問題