JavaScript powstał w 1995. Opracowany przez Netscape oraz Sun Microsystem. Jest obiektowym skryptowym językiem programowania.



Podobne dokumenty
Krótki kurs JavaScript

CZYM JEST JAVASCRIPT?

JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.

Zdarzenia Zdarzenia onload i onunload

JAVAScript tablice, przekazanie danych do funkcji, obiekty Date i window

Tworzenie Stron Internetowych. odcinek 10

Funkcje i instrukcje języka JavaScript

JAVAScript w dokumentach HTML - przypomnienie

Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych

Wykład 03 JavaScript. Michał Drabik

XML extensible Markup Language. część 5

Podstawy JavaScript ćwiczenia

Zajęcia 4 - Wprowadzenie do Javascript

Cw.12 JAVAScript w dokumentach HTML

XML extensible Markup Language. część 5

Rys.2.1. Trzy warstwy stanowiące podstawę popularnego podejścia w zakresie budowy stron internetowych [2]

Współdziałanie przeglądarki i skryptów w pliku HTML (lub XML), oraz współdziałanie przeglądarki i ekranu ilustruje niżej położony rysunek.

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),

JAVAScript w dokumentach HTML (2)

Rys.2.1. Drzewo modelu DOM [1]

JAVAScript w dokumentach HTML (1)

JavaScript - wykład 4. Zdarzenia i formularze. Obsługa zdarzeń. Zdarzenia. Mysz. Logiczne. Klawiatura. Beata Pańczyk

Zaawansowane aplikacje internetowe

Przetwarzanie dokumentów XML i zaawansowane techniki WWW Zdarzenia w JavaScript (Zajęcia r.)

Bazy Danych i Usługi Sieciowe

Tworzenie stron internetowych z wykorzystaniem HTM5, JavaScript, CSS3 i jquery. Łukasz Bartczuk

Umieszczanie kodu. kod skryptu

Aplikacje internetowe

Obiektowy model dokumentu. Katedra Mikroelektroniki i Technik Informatycznych

JavaScript. mgr inż. Remigiusz Pokrzywiński

Systemy internetowe. Wykład 3 PHP. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science

WYKŁAD 4 JĘZYK JAVASCRIPT CZĘŚĆ 1

JavaScript funkcyjność

Języki skryptowe w programie Plans

JAVASCRIPT PODSTAWY. opracowanie: by Arkadiusz Gawełek, Łódź

Właściwości i metody obiektu Comment Właściwości

Ogólny schemat prostego formularza: A może lepiej zamiast przycisku opartego o input tak:

JavaScript. Wstęp do podstaw elementów. dr inż. Paweł Boiński, Politechnika Poznańska

Podstawy programowania w języku JavaScript

JAVASCRIPT PODSTAWY. opracowanie: by Arkadiusz Gawełek, Łódź

JAVASCRIPT (cz. IV) ĆWICZENIA DO SAMODZIELNEGO WYKONANIA materiały dydaktyczne dla słuchaczy opracowanie: by Arkadiusz Gawełek, Łódź

Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA

Test przykładowy 2 PAI WSB Wrocław /06/2018

Systemy internetowe Wykład 3 PHP

Informacja o języku. Osadzanie skryptów. Instrukcje, komentarze, zmienne, typy, stałe. Operatory. Struktury kontrolne. Tablice.

1 Podstawy c++ w pigułce.

Wybrane działy Informatyki Stosowanej

Tworzenie aplikacji internetowych E14

PROGRAMOWANIE W ŚRODOWISKU FLASH wykład 2

Okna, ramki i ciasteczka

Komentarze w PHP (niewykonywane fragmenty tekstowe, będące informacją dla programisty)

Kurs JavaScript TI 312[01]

Wykład 2 Składnia języka C# (cz. 1)

Programowanie obiektowe

Tworzenie stron internetowych z wykorzystaniem HTM5, JavaScript, CSS3 i jquery. Łukasz Bartczuk

Techniki WWW. (HTML, CSS, JavaScript) Dr inż. Marcin Zieliński WYKŁAD 6. Środa 15:30-17:00 sala: A-1-04

LibreOffice Calc VBA

1. Prawie wszystko jest obiektem (poza nullem i 'undefined'). 3. Dostęp do metod uzyskuje się analogicznie do właściwości:

Format HTML. Wybrane działy Informatyki Stosowanej. Definicja i przeznaczenie Struktura dokumentu Znaczniki Formularze i komponenty

Wydawnictwo Helion ul. Koœciuszki 1c Gliwice tel

Laboratorium 03: Podstawowe konstrukcje w języku Java [2h]

Scenariusz Web Design DHTML na 10 sesji. - Strony statyczne I dynamiczne. - Dodawanie kodu VBScript do strony HTML. Rysunek nie jest potrzebny

Dynamiczne przetwarzanie stron. dr Beata Kuźmińska-Sołśnia

Podstawy programowania w języku JavaScript

JAVA. Platforma JSE: Środowiska programistyczne dla języka Java. Wstęp do programowania w języku obiektowym. Opracował: Andrzej Nowak

Czym jest AJAX. AJAX wprowadzenie. Obiekt XMLHttpRequest (XHR) Niezbędne narzędzia. Standardowy XHR. XHR z obsługą baz danych

JavaScript jest językiem skryptowym interpretowanym przez przeglądarki WWW. Istnieją różne sposoby umieszczania kodu JavaScript w kodzie HTML

Podstawy programowania skrót z wykładów:

Język C : programowanie dla początkujących : przewodnik dla adeptów programowania / Greg Perry, Dean Miller. Gliwice, cop

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

TECHNOLOGIE INTERNETOWE WYKŁAD 6. JavaScript Funkcje i obiekty

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)

Wprowadzenie do Internetu zajęcia 4

DOM (Document Object Model)

Obiektowe bazy danych

Wybrane działy Informatyki Stosowanej

SUM Edukacja Techniczno Informatyczna Języki i Systemy Programowania. Wykład 2. dr Artur Bartoszewski - WYKŁAD: Języki i Systemy Programowania,

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

Należy ściągnąć oprogramowanie Apache na platformę

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych

Ilość cyfr liczby naturalnej

Tworzenie aplikacji w języku Java

Podstawowe części projektu w Javie

JavaScript. Æwiczenia praktyczne

Microsoft IT Academy kurs programowania

Celem ćwiczenia jest zapoznanie z językiem HTML i JavaScript, zasadami tworzenia stron WWW i umieszczania na nich skryptów w języku JavaScript.

Ćwiczenie: JavaScript Cookies (3x45 minut)

1 Podstawy c++ w pigułce.

Szkolenie wycofane z oferty. Programowanie w JavaScript (zawiera jquery)

Podstawy Programowania C++

Kurs HTML 4.01 TI 312[01]

Spis treści. Księgarnia PWN: Roland Zimek - Swish Max3

Spis Treści SPIS TREŚCI... 1 ROZDZIAŁ 1. PODSTAWY... 3 ROZDZIAŁ 2. PIERWSZE SKRYPTY... 5 ROZDZIAŁ 3. ELEMENTY JĘZYKA JAVASCRIPT...

PHP: bloki kodu, tablice, obiekty i formularze

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki

DIAGRAMY SYNTAKTYCZNE JĘZYKA TURBO PASCAL 6.0

Programowanie obiektowe. Wykład 4

Aplikacje WWW - laboratorium

Transkrypt:

JavaScript 1

Wstęp JavaScript powstał w 1995. Opracowany przez Netscape oraz Sun Microsystem. Jest obiektowym skryptowym językiem programowania. Cel: Wprowadzanie elementów interaktywnych na stronach internetowych. Dialekty: Adobe Flash, ActionScript, JSrcipt (Microsoft). 2

Zastosowanie Do wykonywania operacji po stronie klienta (przeglądarki): Zapewnienie interakcji z użytkownikiem Tworzenie komunikatów, okienek dialogowych Tworzenie dynamicznych formularzy, w których możemy np. sprawdzić poprawność danych Gry interaktywne Wykonywanie skomplikowanych obliczeń matematycznych Tworzeniu efektów (ruchomy tekst, animacje, wykorzystanie dźwięku) Dynamiczne modyfikacje wyglądu strony (zmiana tła, tekstu,...) Tworzenie stron html w zależności od potrzeb użytkownika Komunikacja pomiędzy elementami strony (np. Ramki) i wiele, wiele innych 3

Przeglądarka Firefox 3.0 Włączanie obsługi JavaScript 4

DOM Document Object Model Model obiektów dokumentu DPM to sposób reprezentacji złożonych dokumentów XML i HTML w postaci modelu obiektowego. Model ten jest niezależny od platformy i języka programowania. Standard DOM jest definiowany przez W3C. 5

Poziomy DOM DOM Level 0 nieoficjalny; model DOM z przeglądarki Netscape Navigator 3.0, skopiowany przez Microsoft i zaimplementowany we wszystkich przeglądarkach internetowych, mimo że nie stanowi oficjalnego standardu W3C. Zapewnia prosty dostęp głównie do elementów formularzy i obrazków. DOM Level 1 dostępny z poziomu JavaScriptu w przeglądarkach internetowych oraz w wielu innych językach programowania. Poziom ten odpowiada za dostęp do treści dokumentu poprzez tworzenie, modyfikowanie i dołączanie węzłów i atrybutów. DOM Level 2 dostępny w większości współczesnych przeglądarek internetowych oraz w wielu językach programowania. Poziom ten odpowiada m.in. za obsługę zdarzeń i przestrzeni nazw. DOM Level 3 - składa się na niego sześć specyfikacji: DOM Level 3 Core DOM Level 3 Load and Save DOM Level 3 XPath DOM Level 3 Views and Formatting DOM Level 3 Requirements DOM Level 3 Validation 6

Żróðło: http://dsmith77.files.wordpress.com/2008/07/the-document-object-model-dom.gif 7

Formularz a DOM <HTML> <BODY> <H1> Przykład formularza </H1> <FORM> <INPUT TYPE= text > <INPUT TYPE= button > </FORM> </BODY> </HTML> Window Document Form Text Location Button Każdy obiekt Window zawiera obiekt Location przechowujący informacje o adresie URL odczytanego dokumentu. 8

Odwołania do obiektów Odwołania do obiektów realizowane za pomocą nazw, czyli zmiennej NAME. <HTML> <BODY> <H1> Przykład formularza </H1> <FORM NAME= pizza > <INPUT TYPE= text NAME= rodzaj > <INPUT TYPE= button NAME= sprawdz > </FORM> </BODY> </HTML> Window Location window Document window.document Form window.document.pizza Text Button window.document.pizza.rodzaj window.document.pizza.sprawdz 9

Odwołania do obiektów W DOM może występować tylko jeden obiekt window oraz tylko jeden document. Przy odwołaniach do obiektów można pomijać window, ale nie można pominąć obiektu document. window.document.pizza.rodzaj OK document.pizza.rodzaj OK pizza.rodzaj BŁĄD!!! 10

Schemat skryptu JavaScript <SCRIPT LANGUAGE="JavaScript"> <! a w środku instrukcje > Instrukcja 1 Instrukcja 2 Instrukcja 3... </SCRIPT> gdy kod skryptu jest umieszczony w oddzielnym pliku <SCRIPT LANGUAGE="JavaScript" SRC="skrypt.txt"> 11

JavaScript w HTML-u W sekcji HEAD Jeśli skrypt będzie uruchamiany w reakcji na jakieś zdarzenia, np. naciśnięcie przycisku W sekcji BODY Jeśli skrypt ma być uruchamiany w czasie otwierania strony, tak aby wygenerować jej zawartość. Liczba skryptów w obydwu sekcjach jest nieograniczona. 12

OnLoad Uruchamianie skryptów podczas otwierania dokumentów: Umieszczenie skryptu w sekcji BODY. Obsługa zdarzenia OnLoad zdarzenia zachodzącego w chwili, gdy przeglądarka zakończy pobieranie wszystkich elementów strony (w tym rysunków, apletów, osadzonych plików multimedialnych) <HTML> <HEAD> <SCRIPT LANGUAGE= JavaScript > <! function done() { alert ( Zakończyło się ładowanie strony ) } <SCRIPT> </HEAD> <BODY onload= done() > TRESC STRONY </BODY> </HTML> 13

Komentarze <!-- jakis komentarz HTML --> Używany do ukrywania kodu przed starszymi wersjami przeglądarek. Dodatkowo w Java Script można używać: // to jest komentarz jednolinijkowy /* a to jest komentarz wieloliniowy */ 14

Zmienne Zmienne w języku JavaScript nie mają ustalonych typów - mogą one przechowywać wartośći dowolnego typu danych. Typy zmiennych: liczbowe, łańcuchy znaków, logiczne, null. Nazwy zmiennych w przeciwieństwie do wartości znakowych nie zapisuje się w cudzysłowach. JS rozróżnia duże i małe litery. Tak więc zmienna Tekst nie będzie traktowana jako zmienna TeKsT. Nazwa zmiennych nie może zawierać spacji. Nazwa nie może być słowem zarezerwowanych dla JavaScript. Nazwa zmiennych powinna zacząć się od litery lub znaku podkreślenia "_". 15

Typy wartości Typ Przykład Opis String ciag znakow Ciąg znaków wewnątrz cudzysłowu Number 7.53 074 0XAF Dowolna liczba (bez cudzysłowu) Liczba w postaci ósemkowej Liczba w postaci szesnastkowej Boolean true lub false Wartość logiczna Null null Brak określonej wartości Object Function Wszystkie właściwości i metody należące do dowolnego obiektu lub tablicy Definicja funkcji 16

Zmienne Deklaracja zmiennych słowo kluczowe var. Tylko raz, dana zmienna może być zadeklarowana. var zmienna var zm1=25 var zm2= hello var zm3=34.34 var zm4=zm1+12 17

Konwersje typów danych 12+16 //wynik=28 12+ 16 //wynik= 1216 12+13+ 16 //wynik= 2516 parseint( 12 ) parseint( 12.73 ) parsefloat( 12 ) parsefloat( 12.73 ) 12+13+parseInt( 16 ) //wynik=12 //wynik=12 //wynik=12 //wynik=12.73 //wynik=41 Przy zamianie liczb na łańcuchy, wykorzystuje się pusty łańcuch. ( +25) //wynik= 25 ( +25).length //wynik=2 18

Tablice Różne wiersze tablicy mogą przechowywać różne typy danych. var kraj = new Array[10] kraj[0]= Albania kraj[9]=98.765 19

Tablice sortowanie <html> <body> <script type="text/javascript"> var arr = new Array(5); arr[0] = "Zosia"; arr[1] = "Marysia"; arr[2] = "Ola"; arr[3] = "Zuzia"; arr[4] = "Jadzia"; Wynik: Zosia, Marysia, Ola, Zuzia, Jadzia Jadzia, Marysia, Ola, Zosia, Zuzia document.write(arr + "<br />"); document.write(arr.sort()); </script> </body> </html> 20

Tablice sort. wart. liczbowych <html> <body> <script type="text/javascript"> function comparenumbers(a, b) { return a b; } var arr = new Array(6); arr[0] = "10"; arr[1] = "5"; arr[2] = "40"; arr[3] = "25"; arr[4] = "1000"; arr[5] = "1"; Przy sortowaniu wartości liczbowych musi być zdefiniowana funkcja porównująca wartości. W przeciwnym przypadku, wartości liczbowe będą traktowane jako łańcuchy. document.write(arr + "<br />"); document.write(arr.sort(comparenumbers)); </script> </body> </html> 21

Operatory Operatory porównania Operator == Jest równe!= Jest różne Operatory arytmetyczne +, -, *, / Operatory logiczne, && Opis > Jest większe niż >= Jest większe bądź równe < Jest mniejsze niż <= Jest mniejsze bądź równe 22

Łańcuchy Konkatenacja (łączenie łańcuchów) Imie = Jan ; Nazwisko = Nowak ; Osoba = Imie + Nazwisko; //wynik Jan Nowak Imie += Maria ; // wynik Jan Maria Zmiana wielokości liter touppercase() to LowerCase() Imie = Jan ; Imie.toUpperCase(); Imie.toLowerCase(); // JAN // jan 23

Łańcuchy Przeszukiwanie traktor.indexof( rak ) // wynik=1 Odczytywanie znaków traktor.charat(4) // wynik= t Odczytywanie podłańcuchów traktor.substring(1,5) // wynik= rakt 24

Obiekt Math Stałe Math.E //liczba e Math.PI //liczba pi Math.SQRT2 //pierwiastek kwadratowy z 2 Math.SQRT1_2 //pierwiastek kwadratowy z 1/2 Math.LN2 //logarytm naturalny z 2 Math.LN10 Math.LOG2E Math.LOG10E 25

Obiekt Math Funkcje Math.min(val1,val2) //zwraca wartość mniejszą Math.max(val1,val2) //zwraca wartość większą Math.pow(val1,val2) //val1 do potęgi val2 Math.sqrt(val) //pierwiastek z val Math.exp(val) //e do potęgi val Math.round(val) //zaokrąglenie do liczby całkowitej Math.random() //wartość losowa z przedziału [0,1] Math.sin(val) //sinus Math.cos(val) Math.tan(val) Math.asin(val) Math.acos(val) Math.atan(val) Math.log(val) //logarytm naturalny z val Math.floor(val) //zaokrąglenie do l. całk. w dół Math.ceil(val) //zaokrąglenie do l. całk. w górę 26

Obiekt Date Konstruktory var data = new Date ( Month dd, yyyy hh:mm:ss ); var data = new Date ( Month dd, yyyy ); var data = new Date ( yy,mm,dd,hh,mm,ss ) var data = new Date ( yy,mm,dd ) Funkcje gettime() liczba milisekund od godz. 00:00:00 czasu Greenwich 01 01 1970 getyear() rok getmonth() miesiąc ( styczeń=0 ) getdate() dzień miesiąca getday() dzień tygodnia (niedziela = 0 ) gethours() godzina w zapisie 24 godzinnym getminutes() minuta getseconds() sekunda oraz odpowieniki setxxxxx(val) 27

Przykład - zegar <html><head> <script type="text/javascript"> function starttime(){ var today=new Date(); var h=today.gethours(); var m=today.getminutes(); var s=today.getseconds(); // add a zero in front of numbers<10 m=checktime(m); s=checktime(s); document.getelementbyid('txt').innerhtml=h+":"+m+":"+s; t=settimeout('starttime()',500); } function checktime(i){ if (i<10) { i="0" + i; } return i; } </script> </head> <body onload="starttime()"> <div id="txt"></div> </body> </html> 28

Przykład porównywanie dat var mydate=new Date(); mydate.setfullyear(2010,0,14); var today = new Date(); if (mydate>today) { alert("dzisiaj jest przed 14 tym styczniu 2010"); } else { alert("dzisiaj jest po 14 tym styczniu 2010"); } 29

Typ zmiennej(obiektu) Funkcja constructor <script type="text/javascript"&gt> var test=new Boolean(); if (test.constructor==array) { document.write("this is an Array"); } if (test.constructor==boolean) { document.write("this is a Boolean"); } if (test.constructor==date) { document.write("this is a Date"); } if (test.constructor==string) { document.write("this is a String"); } </script> Wynik: This is a Boolean 30

Struktury sterujące Instrukcja if...else if (warunek1){ instrukcje1; } else if (warunek2){ instrukcje2; } else if (warunek3){..instrukcje3; }... else if (warunekn){..instrukcjen; } else{..instrukcjem; } Instrukcja switch switch(wartość){ case 1: instrukcje1; [break;] case 2: instrukcje2; [break;] default: instrukcje_def; [break;] } 31

Pętle Pętla for for([wyrażenie_początkowe]; [warunek]; [zmiana_wyrażenia]) { instrukcja1... instrukcjan } Pętla while while (wartość<=wartość_końcowa) { instrukcja1... instrukcjan } W pętlach można stosować instrukcje break oraz continue. 32

Funkcje function nazwafunkcji ([par1]...[,par[n]) { instrukcja1... instrukcjan } function mojafunckcja(txt,abc) { alert(txt); alert(abc); } 33

Zdarzenia OnLoad zachodzi w chwili, gdy przeglądarka zakończy pobieranie wszystkich elementów strony (w tym rysunków, apletów, osadzonych plików multimedialnych) OnUnload przed opuszczeniem strony <BODY onload= fukcja_obsługująca_onload() > <BODY onunload= fukcja_obsługująca_onunload() > <BODY onload= fukcja_obsługująca_onload() onunload= fukcja_obsługująca_onunload() > <BODY onload= self.name='main' onunload= self.name='' > 34

Zdarzenia Zdarzenia zwiazane z walidacją wartości. OnFocus przejmowanie fokusu OnBlur tracenie fokusu OnChange zmiana zawartości <input type="text" size="30" id="email" onchange="checkemail()"> Zdarzenia zwiazane z ruchem myszką. Zastosowanie: np. do tworzenia przycisków animowanych. OnMouseOver gdy kursor kyszki znajduje na obiekcie OnMouseOut gdy kursor myszki 35

Tworzenie window.open(url, nazwa, wyglad) Tworzenie okna <script language="javascript"> function newwin() { var subwin = window.open("../formularze/formularz1.html", "def", "HEIGHT=200,WIDTH=200") } </script> Zamykanie window.close() 36

file:///home/zrzut_ekranu-%5baplikacja%20javascript%5d.png Okna dialogowe Metoda window.alert(tekst) okno z ostrzeżeniem alert('wartość musi być większa od 0'); 37

file:///home/zrzut_ekranu-%5baplikacja%20javascript%5d-1.png Okna dialogowe Metoda window.confirm(tekst) okno z zapytaniem if ( confirm( Czy chcesz rozpocząć grę od nowa? ) ) { alert( Nowa gra. ); } 38

Właściwości obiektu window Status window.status <a href= http://wi.pb.edu.pl OnMouseOver= window.status='strona Wydziału Informatyki PB'; return true >Wydział Informatyki PB</a> Uwaga: Niektóre funcje obsługi zdarzeń, np. OnMouseOver, wymagają instrukcji return true. Domyślny status window.defaultstatus window.closed true gdy zamknięte Uwaga: Odwołanie do zamkniętego okna zawsze zwraca null. window.document odwołanie do obiektu document window.location odwołanie do obiektu location window.history odwołanie do obiektu history 39

Właściwości obiektu window window.innerheight wysokość okna wewnetrznego, czyli obszaru okna przeglądarki wykorzystywanego do wyświetlania dokumentu window.innerwidth szerokość okna wewnętrznego window.outerheight wysokość okna zewnetrznego, czyli rozmiaru pełnego okna przeglądarki, łącznie ze wszystkimi elementami wykończenia: paski przewijania, paski stanu, menu, itd. window.outerwidth szerokość okna zewnętrznego 40

Właściwości obiektu window Pasek menu (menubar) Pasek zadań (toolbar) Pasek adresu (locationbar) Pasek osobisty (personalbar) Pasek przewijania (scrollbar) Pasek statusu (statusbar) Wszystkie elementy wykończenia mają właściwość visible (wartość boolowska). 41

Metody obiektu window window.alert(wiadomo ść ) wyświetlenie alertu window.close() zamknięcie okna window.back() powrót do poprzedniego okna (programowy odpowienik przycisku nawigacyjnego podobnie jak forward, home oraz print). window.forward() powrót do poprzedniego okna window.home() powrót do okna strony domowej window.print() drukowanie window.moveby(deltax, deltay) przesunięcie okna w stosunku do aktualnego położenia window.movety(x, y) przesunięcie okna do pewnej pozycji bezwzględnej. 42

Zdarzenia obiektu window window.onload() window.onunload() window.onmove() window.onresize() window.ondragdrop() - argumentem może być obiekt typu event, zawierający informacje m.in. w którym miejscu upuszczono element, jaki jest adres URL dokumnetu. 43

Właściwości obiektu location Zawiera informacje na temat adresu URL okna lub ramki. location.protocol np. http: location.hostname np. aragorn.pb.bialystok.pl location.port np. 80 location.host np. aragorn.pb.bialystok.p:80 location.pathname np. /poczta/odebrane.html location.hash np. #nowymail, odnośnik lokalny w dokumencie location.href pełny adres URL, np. http:aragorn.pb.bialystok.pl:80/poczta/odebrane.html#nowymail 44

Metody obiektu location location.assign( adresurl ) przypisanie adresu spowoduje przejście do strony o zadanym adresie. Ten sam efekt można uzyskać przypisując adres zmienenj location.href. location.reload(odczytbezwarunkowybool) odświeżanie strony location.replace( adresurl ) przejście do strony o podanym adresie URL. Różnica w stosunku do location.assign polega na tym, że w tym przypadku po otwarciu nowego dokumentu na liście historii nie będzie widoczny dokument, w kóŧrym umieszczono instrukcję powodującą nawigację. 45

Właściwości obiektu history Zawiera informacje o ostatnio odwiedzanych adresach URLi. history.current obecny adres history.previous poprzedni adres history.next następny adres history.length liczba elementów w tablicy historii var hist = window.history[5]; 46

Metody obiektu history history.back() przejście do poprzedniego dokumentu zapisanego w historii. history.forward() przejście do następnego dokumentu zapisanego w historii. history.go([+ ]krok) przejście do dokumentu znajdującego się na liście historii o pewną liczbę kroków (do przodu lub do tyłu). 47

Obiekt document document.write wypisywanie tekstu wewnątrz dokumentu document.write("tekst który pojawi się na stronie"); document.write("<h1>nagłówek</h1>"); document.title zwraca tytuł dokumentu (określony za pomocą znacznika <title> document.write(document.title); document.url zwraca adres URL dokumentu document.write(document.url); 48

Obiekt document document.referrer zwraca adres URL dokumentu, który załadował ten dokument document.write(document.referrer); document.domain zwraca domenę dla dokumentu document.write(document.domain); document.url zwraca adres URL dokumentu document.write(document.url); 49

Zmiana linka function zmienlink() { document.getelementbyid('linktopage').innerhtml="strona Politechniki PB"; document.getelementbyid('linktopage').href="http://www.pb.edu.pl"; document.getelementbyid('linktopage').target="_blank"; } <a id="linktopage" href="http://wi.pb.edu.pl">strona Wydzialu Informatyki</a> <input type="button" onclick="zmienlink()" value="zmien link"> Ustawienie właściwości target na _blank spowoduje, że po kliknięciu na link, zostanie on otwarty w nowym oknie. 50