JavaScript dla każdego
//  wróć   główna   dalej  //

Historia

history.back() history.go() history.forward() reload() javascript:

Przeglądając strony możemy pomóc sobie przyciskami historii, by sprawniej się poruszać pomiędzy stronami już oglądanymi:

history.back() załaduje stronę poprzednią,
history.go(0) przeładuje bieżącą stronę, czyli ją odświeży,
history.forward() przejdzie do strony następnej, jeżeli uprzednio została cofnięta.

Zastosowanie instrukcji na stronie może być następujące:

<INPUT TYPE=Button VALUE="Wstecz" onClick="history.back()">
<INPUT TYPE=Button VALUE="Odśwież" onClick="history.go(0)">
<INPUT TYPE=Button VALUE="Dalej" onClick="history.forward()">

W tym przypadku w kodzie właściwości HREF tagu A należy zadeklarować, że linkę obsłuży JavaScript. Alternatywnym rozwiązaniem jest użycie w definicji linki zdarzenia onClick, i pozostawienie adresu nieaktywnego:

<A HREF="javascript:history.back()"><< wstecz</A>
<A HREF="javascript:history.go(0)">przeładuj</A>
<A HREF="javascript:history.forward()">dalej >></A>

<< wstecz   |   przeładuj   |   dalej >>

<A HREF="#" onClick="history.back()"><< poprzednia</A>
<A HREF="#" onClick="history.go(0)">przeładuj</A>
<A HREF="#" onClick="history.forward()">następna >></A>

<< poprzednia   |   przeładuj   |   następna >>

Akcja przełądowania strony może odbyć się też przy pomocy innej instrukcji:

location.reload()

Chcąc się przenieść do dowolnej strony w historii, należy użyć polecenia do przeładowywania strony, ale jako argument podać odpowiednią wartość. Jest ona równa ilości stron w historii, o które należy się przesunąć. Przyjmie ujemną wartość dla stron już obejrzanych i dodatnią dla tych, z których wróciliśmy. Równie dobrze można tak zapisać powyższe przykłady:

history.go(-1) //cofnij
history.go(0)  //przeładuj
history.go(1) //dalej

Netscape jest mniej tolerancyjny na różnorodność zastosowań tego samego skryptu na różnych obiektach, podobnie jak stare przeglądarki. Jeśli np zastosuje się metodę onClick dla obrazka (nie linki), to nie będzie działała, bo nie jest on elementem aktywnym, co innego np. w nowym Exploratorze, gdzie zdarzenia można stosować do prawie wszystkich obiektów.

Podobnie wartość zero podczas przeładowywania strony jest potrzebna tylko w przeglądarkach Netscape'a. Explorer obsłuży polecenie także z pustą wartością.


Do góry