Gelişmekte olduğum uygulama jQuery Mobile ve sayfanın bazı bölümlerini yenilemek için Ajax etrafında oluşturuldu. Otomatik yenilemeyi kullanan siteler gibi, bazı koşullardan (zaman/görünürlük/vb.) Sonra yenilemeyi durdurmak istiyorum. Böylece sunucum gereksiz isteklerle birlikte bombardımana tutulmuyor. Uygulama, kullanıcı tarafından genel olarak kontrol edilen bir durum ekranına sahiptir ve ideal olarak, betiklerim tarayıcı penceresinin odaklandığını bilecek ve yenilemek için iyi bir zaman olacaktır. Ben masaüstü webapps daha önce yaptım ama örneğin farklı platformlar ve tarayıcılar arasında mobil tarafta bir çok varyasyon fark ediyorum:Tarayıcı cihazlarına mobil cihazlarda nasıl odaklanır?
- window.onfocus()/ateş etmiyor tarayıcı kazançları/sekmeler
- JavaScript sekmesi anahtarlar arasında asılı ve/veya uzak tarayıcıdan geçer not/bir tarayıcıda açık olduğunda patlamaz()
- window.onfocus odak
Şimdiye kadar yapabileceğim en iyi şey, mevcut olaylara baktığınız bir dizi sezgisel + sayfa ile kullanıcı etkileşimini etkiledi, ancak bu durum hantal ve kullanıcının sayfaya geri atlayıp el ile yenilemesi gereken durumlarda sonuçlanır. Harika değil.
Bunu çözmek için herhangi bir akıllı teknik var mı?
Kullanıcı girişini kontrol etmek için alternatif bir çözüm olabilir. Kullanıcının sayfa ile her etkileşimde bulunduğu zamandaki bir saati değişkene ayarladığınız zaman. Bu şekilde, sayfa son dakika veya iki kez kullanılmışsa ajax çağrısını yalnızca tetikleyen bir kural oluşturabilirsiniz. –
Şu anda bunu yapıyorum. Bu yardımcı olur, ancak benim uygulamada kullanıcının sadece web sayfasına geçtiği veya durumu bakmak için telefonunun kilidini açtığı yaygın bir durum var (etkileşim gerektirmez). – LVB