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

标签 javascript

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

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

这里是完整的 html 只是为了测试它的 workig

<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>

最佳答案

这是一个基于 Duplicate link 的解决方案我发布的。

我不会将其作为代码片段发布,因为出于安全原因,代码片段似乎无法与 cookie 一起使用。相反,这是一个有效的 JSFiddle .

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
}

关于javascript - 检查用户是否是第一次使用 javascript 访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49304457/

相关文章:

javascript - 调用方法时位置 X [object Object]' 的值无效:[nsIDOMEventListener::handleEvent]

javascript - 使用文本作为公式并替换变量

javascript - framework 7 swipebox 无法在 cordova android 应用程序中显示附加图像

php - 修改此 JS Focus 函数以使用动态设置 Select 选项的 PHP 函数

javascript - 将 ID 粘贴到 HTML 元素(使用 js)而不是 id 属性?

javascript - Three.js 和 GLSL : Scaling a Texture

javascript - Eclipse 中 Node Express 项目的 javascript 文件中未定义“Angular”

javascript - 使用 .php MySQL 添加自定义 .png 标记到 map

javascript - jquery 在视口(viewport)中运行一次 .one()

javascript - 在 HTML 中获取 DOM 节点的坐标