Javascript cookieの有無で要素の表示・非表示を切り替える

Javascriptを使ってCookieの有無で要素の表示と非表示を切り替えることができます。Cookieがない場合は要素を非表示にしてCookieの値をセット。Cookieがある場合は要素を表示するといった処理で実現できます。

Javascript

前提


$(function(){
    if(getCookie('cookieFlg')){
        // cookieあるとき
        $('.cookie-box').show();
    }else{
        // cookieないとき
        $('.cookie-box').hide();
        document.cookie = "cookieFlg=1; max-age=86400"; //cookie挿入(max-age 秒指定 86400秒=1日)
    }
});


function getCookie( name ){
    var result = null;
    var cookieName = name + '=';
    var allcookies = document.cookie;
    var position = allcookies.indexOf( cookieName );
    if( position != -1 ){
        var startIndex = position + cookieName.length;
        var endIndex = allcookies.indexOf( ';', startIndex );
        if( endIndex == -1 ){
            endIndex = allcookies.length;
        }
        result = decodeURIComponent( allcookies.substring( startIndex, endIndex ) );
    }
    return result;
}

document.cookie

max-age

Cookieの有効期限を秒で指定します。

有効期限
max-age=1 1秒
max-age=60 1分
max-age=3600 1時間
max-age=43200 12時間
max-age=604800 1週間(7日)
max-age=86400 24時間(1日)
max-age=2592000 1ヶ月(30日)
max-age=31536000 1年(365日)
  • このエントリーをはてなブックマークに追加

プロフィール

kura

個人開発歴5年以上。サイト開発・運営。 ペアでエンジニアとアプリ開発しています。

このサイトではWEBデザイン初心者向けになるべく分かりやすいように解説したり、WEBデザインの便利ツール紹介、開発したりしています。

note