Çözüldü Koyu Temayı Kalıcı Hale Getirme

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

Dabaddu37

Hectopat
Katılım
15 Ekim 2019
Mesajlar
135
Çözümler
5
Yer
444th Air Base
Daha fazla  
Cinsiyet
Erkek
Meslek
Öğrenci
Merhabai, HTML + CSS ile bir site kurdum. JavaScript ile de bazı fonksiyonlar ekledim. Şu an yapmaya çalıştığım özellik koyu tema özelliği. Siteye bir buton koydum butona basılınca JavaScript kodlarım çalışıyor ve site koyu temaya geçiyor. Site normal olarak açık temada açılıyor. Düğmeye basınca koyu temaya bir daha basınca açık temaya geri dönüyor.
Yapamadığım olay ise şu; mesela bir kullanıcı siteyi açtı ve koyu temaya geçti sonra sayfayı yeniledi veya başka bir sayfaya geçti, ben CSS'i sonradan değiştirdiğim için sayfa yeniden yüklendiğinde eski CSS dosyaları yeniden yükleniyor (doğal olarak), yani kişi koyu temaya geçtiğinde bu kalıcı olmuyor, ben bu kişinin koyu temayı seçtiğini ve sayfanın yenilendiğinde veya sitede başka sayfaya geçildiğinde otomatik olarak kullanıcının seçtiği temanın yüklenmesini nasıl sağlarım? Hani olur ya bir sitede koyu tema açarsınız ve siz tarayıcının önbelleğini temizlemedikçe o site hep koyu temada açılır. Bunu JavaScript ile yapabilir miyim yoksa veri tabanı falan mı oluşturmam lazım. O konuları hiç bilmiyorum, yardımcı olur musunuz?

JavaScript:
$(function () {
$("#koyu-tema").click(function(){
$('#koyu-tema').css('display','none');
$('#acik-tema').css('display','block');
$('body').css('color','black');
});
});

$(function () {
$("#acik-tema").click(function(){
$('#koyu-tema').css('display','block');
$('#acik-tema').css('display','none');
$('body').css('color','white');
});
});

Not: JQuery kullanıyorum.
 
Son düzenleyen: Moderatör:
Tema bilgisini Cookie'de tutarsan her sayfa yüklenişinde Cookie değerine bakıp ona göre ilgili temanın CSS'ini yüklersin. Ancak daha da kalıcı bir çözüm istersen sitenin veritabanında kullanıcılar için tema bilgisi de tutman gerekebilir.
 
Çerezler ile hallettim sağ olun.
Tamam sorunum çözüldü ama peki tarayıcıyı kapatıp açtığımızda neden çerezler sıfırlanıyor ?

Yani ben sayfamı kapatıp geri açınca sorun yok ama tarayıcıyı kapatıp açınca kaldığım yerden başlamıyor bunun sebebi nedir?
 
Son düzenleme:
Çerezler ile hallettim sağ olun.
Tamam sorunum çözüldü ama peki tarayıcıyı kapatıp açtığımızda neden çerezler sıfırlanıyor ?

Yani ben sayfamı kapatıp geri açınca sorun yok ama tarayıcıyı kapatıp açınca kaldığım yerden başlamıyor bunun sebebi nedir?
O zaman çerez değil session kullanmışsınız demektir. Çerez kullandığınızdan eminseniz çerez süresinin yeteri kadar uzun olduğundan ve gerekli çerez kontrollerini doğru yaptığınızdan emin olmanız gerekir.
 
@Fatalis Hocam kusura bakmayın bildirimlerin arasında görmemişim.

Ben document.cookie kullandım ama hiç süre belirtmedim süre belitilmez ise tarayıcı kapanana kadar mı geçerli olur? Ben süre belirlenmez ise kullanıcı çerezleri temizleyene kadar kalır diye düşünüyordum.

Tamam şimdi w3schools tan bakınca şu satırı fark ettim :
You can also add an expiry date (in UTC time). By default, the cookie is deleted when the browser is closed.

Şimdi anladım tarih belirlemem gerekiyormuş, hepinize teşekkür ederim.
Ek olarak, Türkçe kodlarla yazılım geliştirmeyin. İngilizce kullanmaya alışın sürekli İngilizce kullanın.
@Fatalis Hocam kusura bakmayın ben hala "#acik-tema", "#koyu-tema" falan kullanıyorum 😄.
 
Son düzenleme:

Geri
Yukarı