Odczyt zawartości cookies w jQuery

0

Witam!
Chciałem zrobić w JS/JQuery funkcję, która wykonuje się tylko, jeśli nie istnieje ciasteczko "social" i ciasteczko o nazwie zmiennej dostarczanej do funkcji (zmienna: "id") nie jest równe "1". Gdy funkcja zostanie pomyślnie wykonana ma stworzyć ciasteczko o nazwie "social" o wartości "1" na "5" dni. Niestety, w JS/JQuery jestem strasznie słaby i dokońca nie wiem jak to zrobić a próbowałem duuuużo razy z różnymi kombinacjami. W końcu pobrałem bibliotekę jquery.cookie (https://github.com/carhartl/jquery-cookie/), niestety nadal nic.

Oto kod:

function action(id,title)
	{
	var id;
	var title;
	if($.cookie('social') == NULL || $.cookie('social') == ''){
		if ($.cookie(id) != 'y'){
		// kod
			 if (!response || response.error) {
				alert('błąd');
			 } else {
				$.cookie(id, 'y');
				$.cookie('social', '1', { expires: '3', path: '/' });
			 }
		}
	}
}
0

@simivar:
To Ci się wysypie na samym NULL. Dostajesz zapewne ReferenceError. W JavaScripcie wielkość liter ma znaczenie. To słowo kluczowe piszemy małymi: null.

Poza tym, skoro id oraz title to parametry funkcji action, to nie umieszczaj w środku deklaracji var o tych samych nazwach. Są zbędne.

Skąd pochodzi zmienna response? Nie wiadomo...

0

Cały kod:

function action(id,title){
	if($.cookie('social') == null || $.cookie('social') == ''){
		if ($.cookie(id) != 'y'){
			FB.api('/me/feed', 'post', { body: '', message: title + '', link: ''+id }, function(response) {
				if (!response || response.error) {
					alert('błąd');
				 } else {
					$.cookie(id, 'y');
					$.cookie('social', '1', { expires: '5', path: '/' });
				  }
			});
		}
	}
}

Nadal nie działa :c.

@bswierczynski: @Edit: nie działa ustawianie ciasteczek :C.

0

Jako nazwy ciasteczek w $.cookie() podawaj stringa, np. "if ($.cookie("id") (...)".

  1. "expires" musi być liczbą, nie stringiem:
    $.cookie('social', '1', { expires: 5, path: '/' });

  2. Polecam Firebuga :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1