Я пытаюсь составить список продуктов фаворита. у каждого продукта есть свой идентификатор, это var productID, и он уже доступен на любой странице. то, чего я хочу достичь, это наличие значения json в cookie. после добавления нового продукта получите значение cookie, добавьте новый productID и снова установите cookie с добавленным значением
{"0": "11", "1": "17", "2": "7"}
$.fn.memoProducts = function(options){
options= $.extend({
cookie_name: "memoProducts",
cookie_path: "/",
cookie_expires: 3,
}, options);
function setCookie() {
var cookieValues = getCookie();
var cookie_value_add = [];
cookie_value_add = cookieValues ? $.parseJSON(cookieValues): [];
cookie_value_add.push(productID);
cookie_value = JSON.stringify(cookie_value_add);
var date = new Date;
date.setTime(date.getTime()+(options.cookie_expires*24*60*60*1000));
document.cookie = options.cookie_name+"="+cookie_value+"path="+options.cookie_path+";expires="+date.toGMTString();
}
function getCookie() {
if (document.cookie) {
var values = document.cookie.split(options.cookie_name+"=")[1];
if (values) {
return values.split(";")[0];
}
}
return false;
}
$(this).click(function(e){
setCookie();
});
}
$(function() {
$("a.bookmark").memoProducts();
})
Я не знаю, как заставить это работать. Первая ошибка: cookie_value_add имеет значение null. установка cookie только с этим:
cookie_value = productID;
работает нормально, но всегда перезаписывает значения, установленные ранее. может быть, у кого-то есть идея ...