使用javascript检查用户是否是第一次访问

2024-03-02

我正在尝试构建一个系统,如果用户第一次登陆某个页面,则不会发生任何事情,但如果同一用户再次访问,则该页面不应加载,而是应该转到不同的 URL。

function session() {
    if (document.cookie.indexOf("visited") > 0) {
        window.location.href = "www.google.com";
    } else {
        document.cookie = "visited";
    }
}

这是完整的 html 只是为了测试其工作

<html>
<head>
</head>
<body>
    1st visit
    <script type="text/javascript">
    function session() {
        if (document.cookie.indexOf("visited") > 0) {
            window.location.href = "www.google.com";
        } else {
            document.cookie = "visited";
        }
    }
    </script>
</body>
</html>

这是一个基于以下解决方案重复链接 https://stackoverflow.com/a/27370319/1220550我发布的。

我不会将其作为代码片段发布,因为出于安全原因,代码片段似乎无法与 cookie 一起使用。相反,这里是一个工作JSFiddle https://jsfiddle.net/1t7mxzoq/6/.

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 getCookie(c_name){var c_value = document.cookie;var c_start = c_value.indexOf(" " + c_name + "=");if (c_start == -1){c_start = c_value.indexOf(c_name + "=");}if (c_start == -1){c_value = null;}else{c_start = c_value.indexOf("=", c_start) + 1;var c_end = c_value.indexOf(";", c_start);if (c_end == -1){c_end = c_value.length;}c_value = unescape(c_value.substring(c_start,c_end));}return c_value;}

checkSession();

function checkSession(){
   var c = getCookie("visited");
   if (c === "yes") {
     alert("Welcome back!");
   } else {
     alert("Welcome new visitor!");
   }
   setCookie("visited", "yes", 365); // expire in 1 year; or use null to never expire
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用javascript检查用户是否是第一次访问 的相关文章

随机推荐