SORU
21 HAZİRAN 2011, Salı


Sayfada Popstate'Krom s yük

Benim web uygulaması için Tarih API kullanarak bir sorun var benim. Sayfa ve kullanımı ile ilgili bazı sonuçlar güncelleştirmek için Ajax çağrıları yapıyorumtarih.() pushStatesayfayı yeniden olmadan tarayıcının konum çubuğuna güncelleştirmek için. Sonra, elbette, kullanıyorumpencere.popstategeri düğmesi tıklandığında bir önceki durumuna geri yüklemek için.

Sorun iyi bilinmektedir — Chrome ve Firefox bu popstate olay farklı davranıyor. Firefox ilk yük ateş kadar olmasa da, Chrome geliyor. Sadece yük üzerinde tam olarak aynı olanlar ile sonuçları güncelleştirmeleri beri Firefox tarzı ve yükleme olayı harekete değil istiyorum. History.js kullanmaktan başka bir çözüm var mı? Nedeni pek hoşlanmıyorum kullanarak bu ihtiyacı çok fazla JS kütüphaneleri tarafından kendisi ve, ben beri gerek uygulanan bir CMS ile zaten çok fazla JS, isterim en aza indirmek JS olduğumu koyarak.

Yani, gibi olsun bir yolunu Krom değil ateş 'popstate' üzerinde yük ya da, belki, birileri çalıştı kullanın History.js tüm kütüphaneler darmadağın birlikte içine bir dosya.

CEVAP
18 Mayıs 2012, Cuma


@19 sürüm Google Chrome içinde çözüm spliter çalışmayı durdurdu. @Johnnymire belirttiği gibi, tarih.Chrome 19'da devlet var, ama boş.

Benim çözüm ekleyinpencere.tarih.! = devlet= nullkontrol içine eğer devlet bir pencere varsa.tarih:

var popped = ('state' in window.history && window.history.state !== null), initialURL = location.href;

Chrome sürüm 19 ve 18 tüm büyük tarayıcılar ve test ettim. Çalışıyor gibi görünüyor.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Julian Smith

    Julian Smith

    31 EKİM 2006
  • LiteralMSPaint

    LiteralMSPai

    27 EKİM 2010
  • MattSteffanina 2

    MattSteffani

    28 Kasım 2007