2011-12-02 58 views
0

我用這個代碼來檢索通知自動的setInterval根據結果

setInterval(function(){ 
$('.user_drop_down_num_notifications').load('some url'); 
$('.num_messages').load('some url'); 
$('.num_notifications').load('some url'); 
},3000);  

但是我希望做的是,如果有來自.load檢索到的任何新號碼()函數更新頁面標題用(1)或任何數量的通知檢索來更新標題。

就像Facebook - 當你有一個新的通知和Twitter時,有一個新的故事要閱讀。

+0

在$('。num_messages')中加載請求的一部分發送了什麼? –

+0

完全是,然後jquery會爲它添加一個數字。 – Frank

+0

好的,'.num_notifications'中有什麼?你是否發回所有通知? –

回答

0

load帶有一個回調函數,您可以使用該回調函數來檢查您的ajax調用的響應。然後可以使用attr函數設置文檔的標題。

$('.num_messages').load('some url', 
    function(dataReturned) { 
     if (dataReturned !== "") 
      $(document).attr("title", "(" + dataReturned + ")"); 
    }); 
2

這將取決於從什麼.load返回年代,但假設它只是一個簡單的數字,嘗試這樣的事情:

var num = 0; 
setInterval(function() { 
    $.get('some url', function(data) { 
     if (data != num) { 
      num = data; 
      document.title = "Your Site Title (" + num + ")"; 
     } 
    }); 
}, 3000); 

你仍然要採取了這樣的情況,其中num是0,他們在瀏覽頁面時打開消息。

+0

謝謝,亞當。我將它轉換爲$ .get,應該根據我對這個問題的假設給予支持。 – feedbackloop

+0

這將工作,但它不會像最初一樣將結果實際加載到div中。這可能是正確的,運營商必須澄清。當我在3.5小時內得到新的選票時,我會給你+1你 –

+1

你的答案保持舊的功能與新 - 可能是OP的意圖。現在就把它放在風中! – feedbackloop