0

私のウェブページで初めてのユーザーかどうかを調べようとしています。現在、変数をローカル ストレージに格納し、null かどうかを確認していますが、Internet Explorer では機能しないようです。これを達成するために他にどのような方法を使用できますか?

    var str_count = localStorage.getItem("count");
    if (str_count == null || str_count == "null")
    {
               // Do something
             }
4

3 に答える 3

1

でクッキーを設定できます

document.cookie = name + "=" + value + "; expires=" + exp + "; path=/";

詳細はこちら: http://www.w3schools.com/js/js_cookies.asp

詳細はこちら: http://www.quirksmode.org/js/cookies.html

于 2012-05-07T21:53:12.207 に答える
0

@Greg が言ったように、より良い解決策は、Cookie の値を設定して取得することです。これを行うための 2 つの関数を次に示します。

setCookie = function(){
    var args = arguments,
    name = (args[0] ? args[0] : '') + '=',
    _value = args[1] ? escape(args[1]) : '',
    value = _value + ';',
    expires = args[2] ? 'expires=' + args[2].toUTCString() + ';' : '',
    path = args[3] ? 'path=' + args[3] + ';' : '',
    domain = args[4] ? 'domain=' + args[4] + ';' : '',
    secure = args[5] ? 'secure;' : '',
    newCookie = name + value + expires + path + domain + secure;
    document.cookie = newCookie.match(/[a-z||A-Z]/) ? newCookie : ''
    return _value;
},
getCookie = function(name){
    if(!name || name.replace(/[^a-z|0-9|çáéíóúãõâêîôûàèìòùäëïöü]/,'')=='*') return document.cookie;
    var ck = ' ' + document.cookie + ' ',
    pos = ck.search(' ' + name + '='),
    pos = (pos!=-1) ? pos + 1 : ck.length,
    ck = ck.substring(pos-1,ck.length),
    end = (ck.search('; ')!=-1) ? ck.search('; ') : ck.length,
    value = ck.substring(((ck.search('=')!=-1) ? (ck.search('=')+1) : end),end);
    return unescape((value[value.length-1]==' ') ? value.substring(0,value.length-1) : value);
}

それらはクロスブラウザ機能です。関数を使用getCookieするには、単にnameパラメーターを使用し、setCookie関数でname,value,expires,path,domain,secureパラメーターを使用します

于 2012-05-07T22:00:16.377 に答える