Bunu gerçekten yapmanın tek yolu (ve 'gerçekten basit tarih' bunu nasıl yapıyor), mevcut karmayı kontrol etmeye devam eden bir aralık belirleyerek ve bunu daha önce olduğu ile karşılaştırarak, bunu yaparız ve abonelerin değişmiş bir aboneye abone olmasına izin veririz karma değiştiğinde ateş ettiğimiz olay .. mükemmel değil ama tarayıcılar bu olayı doğal olarak desteklemiyor.
Bu yanıtı güncel tutmak için güncelleyin:
JQuery kullanıyorsanız (bugün çoğu için biraz temel olmalıdır) o zaman güzel bir çözüm, jQuery'nin pencere nesnesindeki hashchange olaylarını dinlemek için kendi olay sistemini kullanarak size verdiği soyutlamayı kullanmaktır.
$(window).on('hashchange', function() {
//.. work ..
});
Burada güzel bir şey, karma desteği hakkında endişelenmenize gerek olmayan bir kod yazabilirsiniz, ancak biraz daha az bilinen jQuery özelliği jQuery özel etkinlikler şeklinde biraz sihir yapmalısınız .
Bu özellik sayesinde, herhangi bir olay için bazı kurulum kodlarını çalıştırırsınız, birisi ilk kez olayı herhangi bir şekilde kullanmaya çalıştığında (olaya bağlanma gibi).
Bu kurulum kodunda yerel tarayıcı desteğini kontrol edebilirsiniz ve tarayıcı bunu yerel olarak uygulamazsa, değişiklikleri yoklamak için tek bir zamanlayıcı ayarlayabilir ve jQuery olayını tetikleyebilirsiniz.
Bu, kodunuzu bu destek sorununu anlamaya ihtiyaç duymadan tamamen engeller, bu tür özel bir etkinliğin uygulanması önemsizdir (basit bir% 98 çalışma sürümü elde etmek için), ancak neden başka biri zaten varsa bunu yapar .