Jeśli przejdziesz do np .:
- http://www.forbes.com/sites/adrianbridgwater/2015/06/12/why-technology-has-to-be-continuous/ LUB
- http://www.zdnet.com/article/if-you-want-those-cool-ios-9-features-its-time-to-buy-a-new-ipad/
Po przejściu na dół strony wczytywana jest historia New News, a adres URL mojej przeglądarki internetowej zmienia się na adres URL tej historii Next News. Zastanawiałem się więc, w jaki sposób strona internetowa może niemal natychmiast załadować następną stronę z niemal nieznacznym opóźnieniem między stronami. Czy są to na przykład: Wstępne pobieranie strony z historią Next News, a następnie naprawdę szybkie ładowanie strony?
End
klawisz, a zobaczysz opóźnienie procesu ładowania.Odpowiedzi:
Krótka odpowiedź jest taka, że kod JavaScript strony po stronie klienta wykrywa, kiedy „zbliżysz się” do dołu strony, i prosi serwer o więcej danych, kiedy to nastąpi.
Bez uzyskania zbyt technicznej wiedzy nie przeładowują całej strony. Zamiast tego kod JavaScript na tej stronie żąda więcej danych od serwera, a następnie, gdy otrzymuje nowe dane, dodaje te dane do bieżącej strony. Części strony, które nie wymagają zmiany, pozostają całkowicie niezmienione.
Najnowocześniejszym sposobem na to jest użycie funkcji modyfikacji historii HTML5 , która wydaje się być tym, czego używają te strony.
źródło
/second
) Powoduje błędy. Nie dzieje się tak w przypadku strony z wiadomościami OP - zmieniają adres URL dokładnie, abyś mógł go udostępnić.history.pushState
ihistory.replaceState
pozwala zmienić adres URL na pasku adresu bez opuszczania bieżącej strony. Jest to bardziej nowoczesna zamiana starszej sztuczki polegającej na zmianie fragmentu adresu URL (#something
), z tą dużą zaletą, że interfejs API historii pozwala na wypychanie „prawdziwych” adresów URL, które serwer może uczestniczyć w generowaniu, podczas gdy fragment musi być obsługiwany całkowicie od strony klienta.Jeden wielki klucz do zrozumienia, co się dzieje: poprzez JavaScript można ustawić adres URL na pasku adresu bez przekierowywania użytkownika. Aby zobaczyć to w akcji, wklej poniższy kod do konsoli obsługiwanej przeglądarki. Zauważ, że zmienia pasek adresu na
http://programmers.stackexchange.com/yay.html
.Zaletą tego podejścia jest to, że jeśli zakładki użytkownika po przewinięciu do wątku, zakładka będzie wiedziała, gdzie wysłać użytkownika. Nieskończone przewijanie wyników wyszukiwania przez DeviantArt jest dobrym przykładem tego zachowania.
źródło
offset
parametry, które pomijają określoną odległość w zestawie wyników. Ponieważ domyślna kolejność sortowania wydaje się być „popularna przez cały czas”, wyniki są prawdopodobnie nieco stabilne, ale zdecydowanie nie, jeśli zmienisz kolejność sortowania na „najnowszą” i poszukasz czegoś popularnego.