1

ユーザーがページにアクセスするたびにCookieの値をインクリメントするために、jqueryCookieプラグインを使用しています。私はこれを行っているので、最初の訪問で何かを表示し、次に2回目の訪問で何かを表示し、その後は何も表示できません。

したがって、ユーザーの最初の訪問、2回目の訪問、およびその後のすべての訪問かどうかを判断する必要があります。

var cookieTime = jQuery.cookie('shownDialog');
cookie_value = parseInt(cookieTime);

if (cookieTime != 'true') {         
    jQuery.cookie('shownDialog', '1', 'true', {expires: 7});
    cookie_value ++;
}

else if (cookieTime == 'true' && cookie_value > 0){
    cookie_value ++;
}

私が使用していたこのコードは、ページを更新するたびにリセットされます。Cookie内に値を保持する代わりに。Cookieの値を保持し、ページが更新されるたびに値を増やす最善の方法がわかりませんか?

4

1 に答える 1

2

私は思わない

jQuery.cookie('shownDialog', '1', 'true', {expires: 7});

有効な形式です。それはあるはずです

jQuery.cookie(cookiename, cookieval, extra);

ソース:https ://github.com/carhartl/jquery-cookie

Cookieが設定されているかどうかを確認する場合は、Cookieがnullかどうかを確認してください。

// Check if the cookie exists.
if (jQuery.cookie('shownDialog') == null) {
    // If the cookie doesn't exist, save the cookie with the value of 1
    jQuery.cookie('shownDialog', '1', {expires: 7});
} else {
    // If the cookie exists, take the value
    var cookie_value = jQuery.cookie('shownDialog');
    // Convert the value to an int to make sure
    cookie_value = parseInt(cookie_value);
    // Add 1 to the cookie_value
    cookie_value++;

    // Or make a pretty one liner
    // cookie_value = parseInt(jQuery.cookie('shownDialog')) + 1;

    // Save the incremented value to the cookie
    jQuery.cookie('shownDialog', cookie_value, {expires: 7});
}
于 2012-10-24T14:07:22.060 に答える