jquery cookie, значение параметра cookie каждого посещения?
Я ищу, чтобы у меня было 3 разных divs. 1 div на 1-й визит. 2-й дивизион на 2-й визит 3-го дивизиона на 3-й визит
Я думал, что у меня есть код, чтобы это произошло, но оно не работает, и мне трудно понять, что я делаю неправильно.
$(document).ready(function() {
var cookieRCCS = $.cookie('shownDialog');
console.log(cookieRCCS);
// Check if the cookie exists.
if ( cookieRCCS === null ) {
console.log("1st if statement " + cookieRCCS);
$("#hellopanel1").show();
// set the cookie to value 1
$.cookie('shownDialog', '1', {expires: 7});
}
else if ( cookieRCCS === 1 ) {
console.log("2nd if statement " + cookieRCCS);
$("#hellopanel2").show();
// If the cookie exists, take the value
cookie_value = $.cookie('shownDialog');
// Convert the value to an int to make sure
cookie_value = parseInt(cookie_value);
// Add 1 to the cookie_value
cookie_value++;
// Save the incremented value to the cookie
$.cookie('shownDialog', cookie_value, {expires: 7});
}
else if ( cookieRCCS === 2){
console.log("3rd if statement " + cookieRCCS);
$("#hellopanel3").show();
cookie_value = $.cookie('shownDialog');
cookie_value = parseInt(cookie_value);
cookie_value++;
$.cookie('shownDialog', cookie_value, {expires: 7});
}
else{
console.log("4th Time Here");
}
});
Это позволит решить вашу проблему с помощью простого и элегантного оператора case для правильного запуска фрагментов кода каскадным способом:
$(document).ready(function() {
var cookieRCCS = (+$.cookie('shownDialog')) + 1;
$.cookie('shownDialog', cookieRCCS,{expires: 7});
console.log(cookieRCCS);
switch (cookieRCCS) {
case 1:
console.log("1st if statement " + cookieRCCS);
$("#hellopanel1").show();
break;
case 2:
console.log("2nd if statement " + cookieRCCS);
$("#hellopanel2").show();
break;
case 3:
console.log("3rd if statement " + cookieRCCS);
$("#hellopanel3").show();
break;
default:
console.log("4th+ Time Here");
}
});
Поскольку вы пишете строку в файл cookie, но проверяете тип с помощью ===. Просто измените ваше сравнение с == или сделайте var cookieRCCS = +$.cookie('shownDialog');
который преобразует его в число (это означает, что вам нужно проверить, не является ли cookieRCCS == 0 вместо null
Еще в рубрике
- Вопросы
- Jquery-cookie
- jquery cookie, значение параметра cookie каждого посещения?