2013-06-25 190 views
0

我們有一個模式對話框,當用戶離開瀏覽器主體時激活。這是使用下面的.one()代碼。是不是應該顯示模態一次?是否有可能每個用戶(cookie?)只做一次這樣的事情,所以每次他們回到頁面時,當他們離開身體時不會重複?jQuery .one只顯示一次

jQuery("body").one('mouseleave', function() { 
    jQuery("#modal-background").toggleClass("active"); 
    jQuery("#modal-content").toggleClass("active"); 
}); 

有什麼建議嗎?

回答

0

檢查函數中cookie的值,如果該值不是1,則表示模態對話框尚未顯示,它進入if並顯示模態對話框並將值設置爲1。 cookie是1,它永遠不會進入if,所以它永遠不會顯示模式對話框。

jQuery("body").one('mouseleave', function() { 
    if(jQuery.cookie("dialogDisplayed") !==1){ 
    jQuery("#modal-background").toggleClass("active"); 
    jQuery("#modal-content").toggleClass("active"); 
    jQuery.cookie("dialogDisplayed", '1', { expires: 30 }); 
    } 
});