jesteś tutaj
279
Interakcja ze stronami WWW
<script>
function init() {
var planet = document.getElementById(”greenplanet”);
planet.innerHTML = ”Alarm czerwony: rozpoczÚto ostrzaï z fazeröw!”;
}
window.onload = init;
</script>
Nawet nie myśl o uruchamianiu mojego kodu,
zanim strona nie zostanie w całości wczytana
No dobrze, ale jak? Oprócz przeniesienia kodu na sam koniec elementu
ERG\!
, istnieje także inny sposób, by to zapewnić; a wiele osób uważa, że jest
bardziej przejrzysty. Polega on na zastosowaniu
odpowiedniego kodu.
A oto co powinieneś zrobić: najpierw musisz napisać funkcję zawierającą kod,
który ma być wykonany
dopiero po zakończeniu wczytywania strony. Kiedy już
to zrobisz, przypisz tę funkcję do właściwości
onload
obiektu
ZLQGRZ
.
Jak to działa? Obiekt
ZLQGRZ
wywoła dowolną funkcję, którą zapiszesz w jego
właściwości
onload
, jednak zrobi to dopiero po zakończeniu wczytywania
strony. Możesz zatem podziękować projektantom obiektu
ZLQGRZ
za
to, że zapewnili możliwość określania kodu, który zostanie wykonany po
zakończeniu wczytywania strony. Wypróbuj poniższy kod.
Najpierw napisz funkcję
o nazwie init i umieść
w niej swój istniejący kod.
To jest nasz wcześniejszy
kod, jednak teraz
umieściliśmy go wewnątrz
funkcji init.
W tym miejscu przypisujemy funkcję init
właściwości window.onload. Koniecznie upewnij
się, że za nazwą funkcji nie zapisałeś nawiasów!
Nie chodzi o wywołanie funkcji — we właściwości
window.onload zapisujemy samą funkcję.
Spróbuj jeszcze raz
Po dodaniu do strony nowej funkcji
init
oraz określeniu
wartości właściwości
ZLQGRZRQORDG
spróbuj odświeżyć stronę
w przeglądarce. Tym razem przeglądarka wczyta całą stronę,
utworzy jej pełny DOM i
dopiero potem wykona funkcję
init
.
O to chodziło — teraz pod
zieloną planetą pojawił się
alarm czerwony, dokładnie
tak jak chcieliśmy.
Funkcja może nosić dowolną
nazwę, jednak zwyczajowo
i często nadaje się jej
nazwę init.
Window jest wbudowanym
obiektem języka JavaScript.
Reprezentuje okno
przeglądarki.
Get Programowanie w JavaScript Rusz głową! now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.