簡體   English   中英

將JS事件限制為每個用戶每天一次

[英]Limit JS event to once per day per user

我希望將以下事件限制為每位用戶每天一次。 當用戶嘗試離開頁面時,將出現一個陰影框。 我不想讓用戶每次鼠標離開身體時都會對此感到煩惱,因此應該只在他們每天第一次訪問該網站時發生。

$('body').one('mouseleave', function() {
    $('.shadowbox').fadeIn(400)
});

我被告知使用cookie是實現此目的的一種好方法,但是我對使用cookie經驗不足。 謝謝!

您可以在該函數中將Cookie設置為過期。

此處提供了很好的文檔。

基本上,進行檢查並設置該功能。

$('body').one('mouseleave', function() {
    var cookie = document.cookie; //You need to find the cookie you need here (if it exists, don't do anything)
    return; //if exists
    $('.shadowbox').fadeIn(400)
    document.cookie = "myCookieName=true; expires=(datetime + 1day)"
});

這樣,只有沒有cookie時,您才能淡入淡出並進行設置。

您可以在此處找到有關將cookie與javascript一起使用的信息: 如何創建cookie並從中讀取值?

然后,假設您使用的是上述解決方案:

$('body').on('mouseleave', function() {
    var cookie = getCookie('visited');
    if ('' == cookie) {
        $('.shadowbox').fadeIn(400);
        createCookie('visited', 'yes', 1);
    }
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM