2012-01-23 9 views
5

Mam za zadanie stworzenie niezwykle ciężki witryny JavaScript, który oczywiście musi być kompatybilny wstecz, a także praca na urządzeniach Pad, dynamicznie zmiana rozmiaru, itd ...Powołując się na JavaScripcie

Czy ktoś ma rady jak aby pomóc w niezawodności kodu? Obecnie wiele się dzieje, gdy DOM jest gotowy. Na przykład. grafika jest skalowana, zdefiniowane są zdarzenia kliknięcia itp.

Jeśli jednak plik jest powolny lub użytkownik zatrzymuje ładowanie, obiekt DOM ready nie zawsze jest uruchamiany, co powoduje, że obrazy nie zmieniają się prawidłowo lub inne pliki JavaScript funkcja do wykonania.

W większości przypadków wszystko działa bez zarzutu, ale są takie dziwne czasy z łącznością sieciową, które powodują kilka "przypadkowych" problemów.

Chciałbym usłyszeć kilka myśli na temat poprawy niezawodności.

+0

Dlaczego zmieniasz rozmiar obrazów po stronie klienta za pomocą JavaScript? Czy nie byłoby bardziej odpowiednie dla twoich potrzeb użycie zapytań o media CSS i niestandardowych arkuszy stylów ze wstępnie skalowaną grafiką? Użyj skryptów, aby załadować swoje zasoby. – Mithrandir

+0

@Mithrandir - co się stanie, jeśli obrócę smartfona, jeśli grafika dostosuje się do niego świetnie, tak na swój sposób należy go pobrać na cały komputer, co może być powolne. Nie jestem pewien, czy to jest uzasadnienie, ale ma dla mnie sens. –

Odpowiedz

4

Załaduj całą zawartość za pomocą JavaScript.

W ten sposób można upewnić się, że wszystkie potrzebne biblioteki zostały załadowane przed wyświetleniem aplikacji. Możesz także użyć ładnego ekranu ładowania, jeśli nie jest to szybkie pobieranie i może wykryć problemy z ładowaniem. Oczywiście jest to tylko dla aplikacji internetowych, które bezwzględnie muszą używać JavaScript.

+0

Interesujący pomysł. Widzę, że przydaje się pobieranie dużej liczby obrazów przy użyciu wielu subdomen CDN, aby ominąć problemy asynchroniczne z treściami z tej samej domeny. – endyourif

+0

Leniwe ładowanie - ładowanie strony w "kawałkach" może być dobrym pomysłem. –

1

Aby ograniczyć możliwość zatrzymania obciążenia, możesz zacząć od profilowania swojej strony, w tym javascript, i zobaczyć, gdzie wszystko jest wolne.

Jeśli niektóre obrazy są powolne, należy je załadować po zakończeniu strony, podając pewne informacje, aby użytkownik wiedział, że zdjęcia będą wyświetlane.

Następnie można ustawić priorytety, na przykład, co zostało zrobione.

Ale, dopóki nie uzyskasz pewnych liczb wydajności, wszystko, co robisz, to zgadywanie, a to jest ryzykowne, IMO.

Powiązane problemy