v2.3.1
Giriş yap

Hazır bir JS'ye nasıl Cookie eklenir?

abdulkadirkaya tarafından soruldu ve en son güncellendi

80 defa görüntülendi

Merhabalar,

aşağıdaki hazır bir JS kod var elimden, kütüphaneden buldum buna nasıl Cookie tanımlayabiliriz acaba?

function dodajAktywne(elem) {
    var a = document.getElementsByTagName('storieCard');
    for (i = 0; i < a.length; i++) {
        a[i].classList.remove('active')
    }
    elem.classList.add('active');
}

Yardım için simdiden teşekkürler.

Cevaplar (3)
tayfunerbilen
11 gün önce

javascript'de cookie oluşturmak belli bir şey, bu koda özel bir şey mi yapmak istedin anlayamadım sorunu. Aşağıdaki gibi cookie oluşturabilirsin, kodunun içindede istediğin yerde kullanabilirsin zaten fonksiyon yani çok karmaşık bir kodun yok :)

function setCookie(name, value, days) {
    var date = new Date();
    date.setDate(date.getDate() + days);
    document.cookie = name + '=' + escape(value) + '; expires=' + date.toUTCString();
    console.log('cookie ' + name + ' created');
}
setCookie('ad', 'değer', 3); // 3 günlük ad adında değer depolayan cookie oluşturduk
abdulkadirkaya
3 gün önce

@tayfunerbilen hocam merhabalar, mesajınızı ancak görüyorum kusuruma bakmayınız, demek istediğim sorumu tam detaylı anlatamadım affolayınız.

Yukarıdaki benim verdiğim kod #storieCard id değerini HTML'de tıklanınca active classı ekleniyor ancak sayfa yenilediği zaman o active classı gidiyor, bu yüzden buna Cookie eklemeyi düşünmüştüm.
Attığınız kodunu "ad" kısmında storieCard olarak mı ekleyeceğim acaba? JS hakkında çok fazla bilgim yok hocam

sefac
2 gün önce

Ad kısmına activeState yazıp value'ya da duruma göre 0 ya da 1 yaz. Kendi fonksiyonunda active class'ını eklediğin yerde de
Tayfun hocanın fonksiyonunu kullanıp cookie ekle.
Daha sonra da active durumunu kontrol et. Cookieleri okumak için bu fonksiyonu kullabilirsin:

function getCookie(cname) {
  var name = cname + "=";
  var decodedCookie = decodeURIComponent(document.cookie);
  var ca = decodedCookie.split(';');
  for(var i = 0; i <ca.length; i++) {
    var c = ca[i];
    while (c.charAt(0) == ' ') {
      c = c.substring(1);
    }
    if (c.indexOf(name) == 0) {
      return c.substring(name.length, c.length);
    }
  }
  return "";
}

getCookie(activeState);
Önce Burayı Okuyun!
Cevap yazarken markdown kod yazımını kullanmanız gerekiyor. Nasıl kullanacağınızı bilmiyorsanız buradaki makaleye gözatın!
Cevap yaz