【JavaScript】2回目に訪れたユーザーに何かしたいとき。
データーベースで制御することも可能ですが、フロント側だけでやるのであれば、Cookieで制御するのがよいかと思います。
cookieで制御してみる - サンプルソース
//Cookie取得 var checkCookie = document.cookie; //Cookie内に【XXX】という文字列があるかないか判定。 if(checkCookie.match("XXX")){ /* ===================================== 2回目の訪問したときの処理 ========================================*/ console.log("2回目ですね。") }else{ //Domain名取得 var domain = document.domain; //Cookieの内容を格納 var visitorCookie = "visitorCookie=XXX; domain="+domain+"; path=/;" //Cookieに書き込み document.cookie = visitorCookie; /* ===================================== 1回目の訪問したときの処理 ========================================*/ console.log("1回目ですね。") }
Cookieを取得しその中に1回目に訪れた時のCookieがあるかないかを判定して、無ければ初回の訪問、あれば2回目の訪問として処理を行う。
上記のソースの場合、cookieの有効期限は、セッション限り(ブラウザを閉じるまで)になっている。
Cookieを保持させたい場合は、以下のように指定
var visitorCookie = "visitorCookie=XXX; max-age=秒; domain="+domain+"; path=/;"
<例>半年の場合
var visitorCookie = "visitorCookie=XXX; max-age=15552000; domain="+domain+"; path=/;"