2012-05-10 87 views
1

我一直在使用bpopup成功添加在我的主頁全屏彈出。JQuery的在首頁第一次訪問

它的偉大工程,但只有當按下按鈕的工作原理。我想只要用戶訪問該網站首次彈出出現Ò網頁,只有網頁。

的代碼,我是:

<script> 
    // Semicolon (;) to ensure closing of earlier scripting 
    // Encapsulation 
    // $ is assigned to jQuery 
    ;(function($) { 

     // DOM Ready 
     $(function() { 

      // Binding a click event 
      // From jQuery v.1.7.0 use .on() instead of .bind() 
      $('button').bind('click', function(e) { 

       // Prevents the default action to be triggered. 
       e.preventDefault(); 

       // Triggering bPopup when click event is fired 
       $('#announce').bPopup(); 

      }); 

     }); 

    })(jQuery); 
</script> 

這個偉大的工程,但如何添加一個cookie相關的處理呢?

在此先感謝您的幫助。它真的很感激。

回答

0

quirksmode

function createCookie(name,value,days) { 
    if (days) { 
     var date = new Date(); 
     date.setTime(date.getTime()+(days*24*60*60*1000)); 
     var expires = "; expires="+date.toGMTString(); 
    } 
    else var expires = ""; 
    document.cookie = name+"="+value+expires+"; path=/"; 
} 

function readCookie(name) { 
    var nameEQ = name + "="; 
    var ca = document.cookie.split(';'); 
    for(var i=0;i < ca.length;i++) { 
     var c = ca[i]; 
     while (c.charAt(0)==' ') c = c.substring(1,c.length); 
     if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); 
    } 
    return null; 
} 

function eraseCookie(name) { 
    createCookie(name,"",-1); 
} 

你會想是這樣的:

createCookie("visited", "true", 90); 

,然後只檢查是否該cookie使用readCookie()設置。

+0

感謝。 V有幫助。 – user1386796

0

的Cookie插件:https://github.com/carhartl/jquery-cookie

$.cookie("test", 1);//setting a cookie 
$.cookie("test", null);//deleting a cookie 
$.cookie("test", 1, { expires : 10 });//setting cookie with time out 

當你的頁面加載檢查作爲

var showDialog=$.cookie("test"); 
if(showDialog==1) 
//showDialog 
+0

當然,這需要一個cookie插件。 – karim79

+0

編輯答案 –

+0

感謝。巨大的幫助! – user1386796

0

cookie的值可以使用此Cookie pluign在代碼中添加條件檢查如果cookie已經存在。像這樣

if($.cookie('first_visit') != '0'){ 
    //Show modal as Cookie is not set 
    $('#announce').bPopup(); 
    // now set cookie 
    $.cookie('first_visit', '0'); 
} 
+0

謝謝你們。這很棒。 – user1386796

+0

我會怎麼做彈出自動加載的,而當按下一個按鈕比? – user1386796

+0

使用$('#announce')的代碼塊。bPopup();在$(document).ready()裏面,而不是在click處理函數中。在這種情況下,它會在dom準備就緒後立即啓動,並且不會等待點擊。 :) –