質問: 1日1回だけ引けるjavascriptおみくじ javascriptとcookie初心者です。 調べながらjavascriptで画像おみくじを作りました。 cookieを使用して1日1回のみ引けるように設定をしたく、 いろいろ調べて 「cookieの有効期限を翌日の0時に設定」すればいいというところまでは わかったのですが、記述の仕方がわかりません。 どなたか教えてください。 よろしくお願いいたします!!
回答: こんなのはどうでしょう? かんたんなことを、めんどうにかいてみました。 ぜんかくくうはくは、はんかくにしてね。 (さいきん、かいとうしても「はずれ」がおおいので、うんだめし!そしたら「凶」!あ~。) 今日の運勢 ===== スクリプトが有効な場合、ここに今日の運勢が表示されます var getomikuji = (function (getcookie, setcookie) { var save = 31; var unlist = [ '大吉', '中吉', '小吉', '中吉', '小吉', '吉', '半吉', '末吉', '末小吉', '凶', '小凶', '半凶', '末凶', '大凶' ]; return function () { var today = (new date).getdate () + ''; var lastday = getcookie.call (this, 'day'); var unsei; if (today === lastday) unsei = getcookie.call (this, 'un'); else { unsei = unlist[math.floor (math.random() * unlist.length)]; setcookie.call (this, 'day', today, save); setcookie.call (this, 'un', unsei, save); } return unsei; }; })( function () { return (function (name) { var d = this.document; var n = encodeuricomponent (name).replace (/([.*()])/g, '\\$1'); var v = d.cookie.match (regexp (n + '\\s*=\\s*(.*?)(?:[\\s;,]|$)')); return v ? decodeuricomponent (v[1]) : ''; }).apply (this, arguments); }, function () { return (function (name, value, day, path, domain) { var d = this.document; var t = new date; t.setdate (t.getdate () + (day || 0)); d.cookie = encodeuricomponent (name) + '=' + encodeuricomponent (value) + ';' + 'expires=' + t.toutcstring () + ';' + (path ? 'path=' + encodeuricomponent (path) + '': '') + (domain ? 'domain=' + encodeuricomponent (domain) + ';': ''); }).apply (this, arguments); }); //_____________ document.getelementbyid ('un').firstchild.nodevalue = '今日の運勢は、' + getomikuji () + 'です。';