5

Zajmuję się tworzeniem strony internetowej i otrzymuję wiele niespójności z ładowaniem podczas odświeżania strony. Kliknięcie na linki działa zgodnie z oczekiwaniami; żadnych problemów. Problem występuje tylko wtedy, gdy ODŚWIEŻAMY stronę. Zauważysz, że ładowanie trwa wieczność, aw niektórych przypadkach odmawia załadowania w ogóle.Strona Załaduj na odświeżanie w IE8

http://annualreview.com.au/caltex/2012/

Strona została zbudowana przy użyciu WordPress 3.5.1 (http://wordpress.org) i Fundację 3.2.5 (http://foundation.zurb.com/).

Każda pomoc w tej sprawie byłaby bardzo doceniana. Nie mam pomysłów.

Dzięki.

Aktualizacja: To nie może być związane z IE. Problem wydaje się istnieć również w innych przeglądarkach.

+0

Nie widzę żadnych błędów w OSX/Chrome OSX/Safari, ale w obu przypadkach HTML trwa bardzo długo - 5-9s - aby się pojawić. Czy jest to hostowane w infrastrukturze Wordpress, czy twoja? – Offbeatmammal

+0

Brak widocznego tutaj problemu z ładowaniem/odświeżaniem strony. –

+0

@Offbeatmammal Strona jest hostowana na naszym własnym koncie hostingowym przez VentraIP (http://ventraip.com.au). Strona ładuje się teraz dobrze w Chrome na OS X dla mnie, więc wydaje się, że jest to problem IE/IE8. Próbowałem tymczasowo powrócić do domyślnego dwudziestosiedowego motywu, który rozwiązuje problem, więc musi być powiązany z tematem. – Scully

Odpowiedz

1

Wygląda na to, że w answer.js został wprowadzony problem z określonym czasem. Może zawierać kod javascript, który jest bezpośrednio wstawiany do pliku js i nie jest zawarty w zdarzeniu takim jak document.ready. Spowodowałoby to natychmiastowe uruchomienie strony podczas odczytu i odczytu js i mogłoby spowodować niespójne zachowanie strony w zależności od tego, jak szybko i wolno się działy.

W takim przypadku szybkie obejście może polegać na owinięciu całej zawartości pliku response.js w module obsługi zdarzeń gotowych do dokumentu, tak aby kod nie został wykonany, dopóki wszystko nie zakończy się.

$(document).ready(function(){ 
    //respond.js contents here.. 
}); 

Powiedziałem, że sprawdziłbym konsolę narzędzi programistycznych przeglądarki IE lub Chrome, aby sprawdzić, czy występują błędy js. Jeśli nadal nie mam szczęścia, ponownie prześledzę logikę ładowania strony, aby ustalić, gdzie może wystąpić problem związany z czasem i przejść z tego miejsca. Możesz dodać wpisy console.log do swojego kodu, aby pomóc Ci prześledzić je w czasie wykonywania i określić przepływ. Wpisy w dzienniku mogą wyjaśniać, skąd bierze się problem.

1

Patrząc na Firebuga, istnieją ogromne opóźnienia w próbie załadowania obrazów. Każdy obraz jest blokowany do momentu załadowania poprzedniego obrazu - kilka razy próbował odświeżać stronę, a obrazy za każdym razem zajmują od 1 do 11 sekund.

Image of Firebug results: https://s17.postimg.org/i3jtmbz1r/firebug_results.jpg

Nie jestem kompetentny w optymalizacji obrazu, ale po szybkim wyszukiwaniu, znalazł kilka sposobów, można spróbować zoptymalizować razy obciążenie:

  • CSS Sprites - to jest mało prawdopodobne, aby przydać się wymiarom obrazów i może być trudne do implementacji obrazu, ale warto wspomnieć o tym, aby można go było zaimplementować w innym miejscu na stronie.
  • Inną rzeczą, którą możesz spróbować, jest używanie innych serwisów do przechowywania obrazów, takich jak Flickr lub Amazon S3. Przeglądarki zazwyczaj pozwalają tylko na 2 połączenia z tym samym serwerem na raz (wszystkie obrazy znajdują się na tym samym serwerze, uzyskujesz długi czas blokowania), ale zezwalają na połączenia do 8 różnych serwerów jednocześnie, więc przy użyciu trzeciego strony z imprezami mogą poprawić czas ładowania.