プロが教えるわが家の防犯対策術!

HPで、ある特定のメージを訪問した時に、2度目以降にそのページを訪問した時にリダイレクトさせて指定した別のURLに飛ばすようにJavaScriptで設定したいのですが、うまくいきません。
過去の解答例などを参考に次のように書いて見たのですが、IEやMicrosoft Edgeの場合、1度目でもいきなりリダイレクトしてしまいました。

<script type="text/javascript">
function init() {
var cooc = getCookie();
if (cooc == "OK") {
location.href=“/index02.html“;
}
}
//クッキー取得(取得できればOK、できなければNGを返す)
function getCookie(){
//クッキー取得
var doc = document.cookie+";".indexOf("test=");
//クッキーが取得できなければindexOfで-1が返されるのでif文で判別
if(doc != -1){
return("OK");
} else {
document.cookie = "test=1;expires="+new Date(today + (60 * 60 * 24 * 1000 * 365));
return("NG");
}
return("");
}
</script>
</head>
<body onLoad="init()">

テストする場合、ブラウザのcookieを消すか、シークレットウインドウでテスト用のリンクページを設けて試しているのですが、うまくいきませんでした。
jQuery Cookie なども試したみたのですが、そちらもうまくいきませんでした。
間違っている箇所、または簡単な記述の仕方があれば、アドバイスをお願いします。

A 回答 (1件)

today の中身は?



試していませんが、

function init() {
 NotTEST () || location.href=“/index02.html“;
}

//クッキー取得(取得できればOK、できなければNGを返す)
function NotTEST (){
 var rst = document.cookie+";".indexOf("test=");
 if(0 <= rst){
  return true;
 }
 var expires = new Date;
 expires.setFullYear (expires.getFullYear () + 1);
 document.cookie = "test=1;expires=" + new Date(expires).toUTCString();
 return false;
}
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!