2012-12-06 63 views
0

我最近幫助解決了這個問題,但無法抓住幫助我的人。jQuery/Cookie彈出問題

下面的代碼會每24小時彈出一次,並創建一個每天過期的cookie。我遇到的問題是,當cookie過期時,會創建一個新的,但彈出框不顯示。我在一個擁有大量用戶的網站上運行,所有人都說它彈出一次,永遠不會再彈出。

我很好用HTML & CSS,但這是100%超出我的範圍。我認爲cookie需要被刪除,而不是從我在互聯網上看到的更新,但我期望錯誤。

任何幫助將不勝感激!提前謝謝了。

 <link rel="stylesheet" href="colorbox.css" /> 
     <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script> 
     <script src="./colorbox/jquery.colorbox.js"></script> 
    <script> 
function getCookie(c_name) 
    { 
     var i,x,y,ARRcookies=document.cookie.split(";"); 
     for (i=0;i<ARRcookies.length;i++) 
     { 
      x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("=")); 
      y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1); 
      x=x.replace(/^\s+|\s+$/g,""); 
      if (x==c_name) 
      { 
       return unescape(y); 
      } 
     } 
    } 

    function setCookie(c_name,value,exdays) 
    { 
     var exdate=new Date(); 
     exdate.setDate(exdate.getDate() + exdays); 
     var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString()); 
     document.cookie=c_name + "=" + c_value; 
    } 
function checkCookie() 
{ 
    var cookieValue=getCookie("IGTop100Vote"); 
    if (cookieValue==null || cookieValue=="") 
    { 
     setCookie("IGTop100Vote","IG-Top-100-Vote-Popup-Cookie-24-Hours",1); 

    $(".ajax").colorbox({ open:true}); 


    } 
    else{ 

    } 

} 
    $(document).ready(function() { 


     checkCookie(); 


    }) 



    </script> 

     <p><a class='ajax' href="./content/ajax.html" title="Vote IG Top 100!"></a</p> 
+0

您使用的是cookie插件嗎? – VIDesignz

+0

VIDesignz我沒有使用插件。 –

+0

你缺少你的文件準備功能的分號...',' – VIDesignz

回答

1

checkCookie()功能從這個

if (cookieValue==null || cookieValue=="") 

改變你的 'if語句' 到這個

if (!cookieValue || cookieValue==null || cookieValue=="") 

這將檢查如果cookie存在,不只是檢查值。