设置 cookie 1 小时并在加载时检查它

Set a cookie for 1 hour and check for it on load

我想在用户访问该站点时制作一个小动画,但我不希望它在用户每次在子页面之间切换时显示。目前它每次都做动画,我不知道为什么。

这是我的代码:

$(document).ready(function() {
    "use strict";
    if (document.cookie.indexOf('visited') > -1) {
        // They've been here before.
        alert("hello again");
    }
    else {
        // set a new cookie
        var d = new Date();
        d.setTime(d.getTime() + (3600 * 1000));
        document.cookie = "visited=yes;" + "expires=" + d.toUTCString() + ";path=/";
        // slide in navbar
        sleep(100);
        document.getElementById("navlist").style.left = "63%";
    }
});

您可以简单地使用 sessionStorage 而不是像这样的 cookie:

$(document).ready(function(){
  if(sessionStorage.getItem("visitedBefore") == undefined){
            sessionStorage.setItem("visitedBefore", "1");
            alert("Welcome for the first time!");
    }
});

Here is the JSFiddle demo