2013-10-19 72 views
0

我用這個代碼應用只有一個元素

var auto_refresh = setInterval(
function(){ 

     if (!localStorage) { 
      return false; 
     } 

     if (!localStorage['VLR_CountMinichat']) { 
      localStorage.setItem("VLR_CountMinichat", 0); 
     } 

     getnumber = localStorage.getItem("VLR_CountMinichat"); 
     $("#ajax-test").load("/ajax", { 
      VLR_CountMinichat: getnumber 
     }); 

}, 20000); 

爲得到的localStorage的變量和阿賈克斯重新加載的setInterval,但我想活躍,如果僅#Ajax的測試顯示在頁面上,因爲它是一個爲登錄用戶保留的功能,該怎麼做?

回答

4

只是測試長度,以確保可用性。

$(function(){ 

    //.... 
    var $ajaxTest = $("#ajax-test"), auto_refresh; 
    if($ajaxTest.length){ 
     auto_refresh = setInterval(runAjax, 20000); 
    } 

    function runAjax(){ 

    if (!localStorage) { 
     return false; 
    } 

    if (!localStorage['VLR_CountMinichat']) { 
     localStorage.setItem("VLR_CountMinichat", 0); 
    } 

    var getnumber = localStorage.getItem("VLR_CountMinichat"); 
    $ajaxTest.load("/ajax", { 
     VLR_CountMinichat: getnumber 
    }); 
} 
}); 
+2

+1,可靠的答案。但是老兄......你真的太快了,在我甚至無法輸入'$(function(){')之前,你已經有了答案。 – Dom