Podstawy programowania w języku JavaScript

Podobne dokumenty
Technologie internetowe w programowaniu

Zdarzenia Zdarzenia onload i onunload

Wykład 03 JavaScript. Michał Drabik

CZYM JEST JAVASCRIPT?

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

Aplikacje internetowe

Krótki kurs JavaScript

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

Programowanie w języku C++

Podstawy JavaScript ćwiczenia

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

Podstawy programowania w języku JavaScript

Podstawy programowania w języku C i C++

Aplikacje internetowe

Ę Ż Ż Ż ś ż Ż

Ś Ę Ą Ł Ś Ł Ł Ł Ł Ł Ś Ś Ł Ł Ł Ą Ł Ł Ł Ł Ł Ą Ą Ł

Ż ź Ś Ż

ć ż ż ż ź

ć Ą Ą Ł Ą

ć

Ś Ę ŚĆ Ę ź ź ź Ś Ś Ś ć ź Ś ź Ę Ś Ą ź ź ź Ś Ś Ę ź ź

ć ż Ą ż ż ż ż ż ż ż Ę Ę

Ś


ś ś ś Ł ś

Ł ź Ń

ż

Ż Ę Ż Ł Ą ź ć ć ć

ż ń Ł ń ń ż ż ż ż ż

Ż Ź Ż ż Ś Ś Ź Ż Ż Ż Ż Ż ć ć Ż

ń ń ń ń ń Ż ć Ż Ł Ż Ł Ś ć ń Ś Ę Ż ć ń Ż Ż Ż Ą Ż Ż Ł Ż Ś

Ń ć Ł Ł Ł ź

Ę Ę ć ć Ę Ą Ę Ą Ę Ę Ę Ę Ę Ę ź Ę Ż Ę Ę Ę Ę ć Ę Ę ć Ę ć

ż ń ń ń ż ń ń Ę ń ć ń ż ń Ę

Ś ć ź ź Ę ź ź Ę Ę Ą Ś Ę Ś Ę ź Ę Ś Ś Ę Ś Ś Ł Ś

ć ź Ż Ń

Ś Ę ź Ń


Ż ń ć ć ń Ż ć Ż Ł ń Ż ń ń ń ń

ć Ę ć ć ć Ł ć ń ć ć ć ń ć

ż ć ć ć ć ć ż Ę ż Ę ż Ł Ą ż ń Ą Ł

Ń ź ź Ą Ń Ą ć ć ć ć ć Ń Ą

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.

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

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

Podstawy programowania w języku C++

Okna, ramki i ciasteczka

Zajęcia 4 - Wprowadzenie do Javascript

JAVAScript w dokumentach HTML (2)

Ę ś ś ń ź ź Ę ć Ę Ł ń ś ń ś Ż ń Ę ś ń Ę ś Ę ń ś ń ś ś Ż ś Ę ń ś ś ś Ę Ę ś ś ś Ę ś ść ś ść

Ć ć ń Ć ń ć ć Ć

Ł Ż ś ć ż ż ś ś ż ś Ę ś Ę ż ź Ż ść Ż

prowadzący dr ADRIAN HORZYK /~horzyk Konsultacje paw. D-13/325D

Ś ć ż ż ż ż Ą Ę Ę Ę

ż ć Ę ż ż ż Ń Ł ż ż ż ż ż ż ż ż

Ż Ż Ł

ć ć

Ł Ł Ę Ż ź

Ą Ą Ą Ź ś ń ć Ź Ą ś Ą śń ć ć Ń Ą ś ć Ź Ą Ą Ą ś Ą ś Ą Ą Ą Ą

ż ż Ż Ł Ż Ś ć ż ć ż Ś

ń ż ś

Ń ź ź ź ź Ś ź ź Ś ź

Ł ć Ł ć ć ć ć Ń ć ć

Ł ś ś ś Ą ż Ą Ń Ł Ł

ż ń ń ź ź ź

Ą Ó Ź Ą Ź Ź

ć ć Ść ć Ść ć ć ć ć


Ń Ń ć ć Ł Ć Ń ć Ę

Ę ź Ż Ę ź ć ź ć Ą ć ć ć ć ć ż ź

ź Ł Ą Ż Ń Ń Ś Ń ć

ć ż Ż Ż Ą Ż Ż Ż

ź Ż Ż Ś ć ć Ł ż Ż Ż Ż Ż Ł Ż Ł Ż Ż Ż ż ż ż ż ż ż Ż ć Ż Ś Ś Ń Ść

ż Ś ż ż ć ć Ś Ź Ą

Ł Ę Ż Ą Ęć Ń Ń Ł Ę

Ś ź ź Ł Ó Ń

ś ś Ż ś Ń Ń Ę Ł ć ś Ł

Ł Ł ż Ś ż Ś Ź ć

ż ć ć ć ż ń ć ż ć ż Ę ć ż

Ł Ł ń ć Ą

Ą Ę Ń Ś Ą

Ę

Ł ć Ś ć Ś ć ć Ę ź ć ć

ć Ś

ść ś ść Ę ś ś ść ś ź ś Ę

Ę Ź Ż Ż ć ć ć ć ć


Ą ź Ą Ą Ś Ó Ą


Ę ż Ó Ł Ść ą ą ą Ą ć ż ą ż ń ą ć ż ć Ę ą ż ą ą ż ą ź ą ń ą ń ą ą ż ć

Ć

Ł Ś Ę Ł Ś Ś Ś Ą ń ń Ó

ć ć Ś Ą Ą ż Ą ź

ć ć Ą Ź Ż Ą Ż ć Ą Ż Ź

ź ń ń



Ź ź Ź ń ń ń ń

ń Ż Ę Ę ń

Ę Ł Ź Ł

Transkrypt:

Podstawy programowania w języku JavaScript Część trzecia Funkcje i programowanie sterowane zdarzeniami Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści wykładu, lektura tych materiałów nie zastąpi uważnego w nim uczestnictwa. Opracowanie to jest chronione prawem autorskim. Wykorzystywanie jakiegokolwiek fragmentu w celach innych niż nauka własna jest nielegalne. Dystrybuowanie tego opracowania lub jakiejkolwiek jego części oraz wykorzystywanie zarobkowe bez zgody autora jest zabronione.

Zanim zaczniemy przydatne funkcje obsługi okien dialogowych Funkcja alert ( tekst ) wyprowadza okno powiadomienia wyświetlający tekst i przycisk OK, którym użytkownik zamyka okno. alert( "Tu okno powiadomie ń, naci ś nij OK" ); Copyright Roman Simiński Strona : 2

Zanim zaczniemy przydatne funkcje obsługi okien dialogowych Funkcja confirm ( tekst ) wyprowadza okno powiadomienia wyświetlający tekst oraz przyciski OK i Cancel (Anuluj). Rezultatem jest true gdy naciśnięto OK, false gdy naciśnięto Cancel. if( confirm( "Naci ś nij OK aby poznać nasz ą ofert ę " ) ) document.write( "Zapraszamy do przegl ą du oferty" ); else document.write( "Szkoda, mo ż e kiedy indziej" ); Copyright Roman Simiński Strona : 3

Zanim zaczniemy przydatne funkcje obsługi okien dialogowych Funkcja prompt ( tekstpodpowiedzi, tekstdomyślny ) wyprowadza okno wczytywania danych wyświetlające tekstpodpowiedzi oraz pole tekstowe o wartości domyślnej tekstdomyślny. Rezultatem funkcji jest wprowadzony tekst po naciśnięciu przycisku OK, wartość null po naciśnięciu przycisku Cancel (Anuluj). var surfername = prompt( "Jak Ci ę mam nazywać:", "" ); if( surfername!= null && surfername!= "" ) document.write( "Witaj " + surfername + "!" ); else document.write( "Witaj nieznajomy!" ); Copyright Roman Simiński Strona : 4

Definiowanie funkcji function nazwafunkcji( parametr1, parametr2,..., parametrn ) kod funkcji function powitanie() alert( "Witaj serferze :)" ); Proste funkcje bezparametrowe o charakterze procedur function powitanie() var surfername = prompt( "Jak Ci ę mam nazywać:", "" ); if( surfername!= null && surfername!= "" ) document.write( "Witaj " + surfername + "!" ); else document.write( "Witaj nieznajomy!" ); Copyright Roman Simiński Strona : 5

Wywoływanie funkcji Funkcje można wywoływać w zwykły sposób podając nazwę i ewentualne parametry. powitanie(); Bardzo często wywołanie funkcji jest wynikiem zaistnienia pewnego zdarzenia na stronie. Funkcja wywoływana po zaistnieniu zdarzenia nazywana jest funkcją obsługi zdarzenia (ang. event handler). Typowe ale nie wszystkie obsługiwane zdarzenia: onclick, onload, onmouseover, onmouseout, onunload. Copyright Roman Simiński Strona : 6

Wywoływanie funkcji obsługa onload Funkcja obsługi zdarzenia onload jest wywoływana po kompletnym załadowaniu strony (znacznik body), rysunku (znacznik img) lub ramki (znacznik frame). <html> <head> function powitanie() var surfername = prompt( "Jak Ci ę mam nazywać:", "" ); if( surfername!= null && surfername!= "" ) document.write( "Witaj " + surfername + "!" ); else document.write( "Witaj nieznajomy!" ); </head> <body onload = "powitanie()"> </body> </html> Copyright Roman Simiński Strona : 7

Wywoływanie funkcji obsługa onunload Funkcja obsługi zdarzenia onunload jest wywoływana natychmiast po akcji opuszczenia strony. <html> <head> var surfername; //... function pozegnanie() alert( surfername + " pa, pa!" ) </head> <body onunload = "pozegnanie()"> </body> </html> Copyright Roman Simiński Strona : 8

Wywoływanie funkcji obsługa onload i onunload Teoretycznie to powinno działać ale nie działa :( <html> <head> var surfername = ""; function powitanie() surfername = prompt( "Jak Ci ę mam nazywać:", "" ); if( surfername!= null && surfername!= "" ) document.write( "Witaj " + surfername + "!" ); else document.write( "Witaj nieznajomy!" ); function pozegnanie() alert( surfername + " pa, pa!" ) </head> <body onload="powitanie()" onunload="pozegnanie()" > </body> </html> Copyright Roman Simiński Strona : 9

Wywoływanie funkcji obsługa onmouseover i onmouseout Wykorzystanie zdarzeń mouseover i mouseout: <html> <head> function darkcolor() document.bgcolor='#9f9f9f'; function lightcolor() document.bgcolor='#ffffff'; </head> <body> <a href="#" onmouseover="darkcolor()" onmouseout="lightcolor()"> Ten link jest wyj ą tkowy </a> </body> </html> Copyright Roman Simiński Strona : 10

Wywoływanie funkcji obsługa onmouseover i onmouseout Mało roztropne wykorzystanie zdarzeń mouseover i mouseout: <html> <head> function uwazaj() alert( "Je ż eli tam wejdziesz, Twoje ż ycie ju ż nie b ę dzie takie samo!" ); function zaluj() alert( "Je ż eli tam nie wejdziesz, b ę dziesz ż ałował!" ); </head> <body> <a href="#" onmouseover="uwazaj()" onmouseout="zaluj()"> Ten link jest wyj ą tkowy </a> </body> </html> Copyright Roman Simiński Strona : 11

Wywoływanie funkcji obsługa onclick W przeglądarce użytkownicy zwykle używają pojedynczego kliknięcia. <html> <head> function info() alert( "A figa ś winko, nic tu nie zobaczysz!" ); </head> <body> <input type="button" name="hl" value="tylko dla dorosłych!" onclick="info()" /> </body> </html> Copyright Roman Simiński Strona : 11

Wywoływanie funkcji ondblclick Uwaga zdarzenie click zawsze wystąpi przed dblclick. <html> <head> function info() alert( "A figa ś winko, nic tu nie zobaczysz!" ); </head> <body> <p>dla tego przycisku u ż yj podwójnego klikni ę cia:</p> <input type="button" name="hl" value="tylko dla dorosłych!" ondblclick="info()" /> </body> </html> Copyright Roman Simiński Strona : 12

Wywoływanie funkcji obsługa onfocus i onblur Czyli obsługa złapania i zgubienia fokusa : <html> <head> function incolor() document.bgcolor='#5f5f5f'; function outcolor() document.bgcolor='#ffffff'; </head> <body> <input type="text" id="test" onfocus="incolor()" onblur="outcolor()" /> </body> </html> Copyright Roman Simiński Strona : 13

Wywoływanie funkcji obsługa onfocus i onblur Wykorzystując onblur można np. weryfikować dane, tutaj jedynie ostrzeżenie: <html> <head> function outinfo() alert( "Je ż eli u ż yłe ś innych liter ni ż du ż e, to masz problem." ); </head> <body> Napisz du ż ymi literami<br /> <input type="text" id="test1" onblur="outinfo()" /><br /> <input type="text" id="test2" onblur="outinfo()" /> </body> </html> Copyright Roman Simiński Strona : 14

Zdarzenia sterowane czasem settimeout i cleartimeout JavaScript pozwala na asynchroniczne wykonywanie wskazanego kodu po upływie zadanego czasu. Służą do tego funkcje: settimeout() wykonuje wskazany kod JavaScript po upłynięciu zadanego czasu; cleartimeout() anulowanie ustawień określonych funkcją settimeout(). Funkcja settimeout() wykonuje przypisaną jej akcję tylko raz. Forma wywołania: var timeobject = settimeout( "kod w j ę zyku JavaScript", czas_w_milisekundach ); Funkcja cleartimeout() zeruje ostawienia dla obiektu będącego rezultatem funkcji settimeout(): cleartimeout( timeobject ); Copyright Roman Simiński Strona : 15

Zdarzenia sterowane czasem settimeout i cleartimeout, przykład 1 <html> <head> function odliczanie() var timeoutobject = settimeout( 'alert( "Czas min ą ł" )', 5000 ); </head> <body onload="odliczanie()"> <p>masz 5 sekund na podj ę cie decyzji!</p> </body> </html> Copyright Roman Simiński Strona : 16

Zdarzenia sterowane czasem settimeout i cleartimeout, przykład 2 var timeoutobject; var sek = 0; function start() document.getelementbyid( "txt" ).value = sek++; timeoutobject = settimeout( "start()", 1000 ); function stop() cleartimeout( timeoutobject ); function zeruj() document.getelementbyid( "txt" ).value = sek = 0;... <h1>głupiutki stoper</h1> <input type="button" value="start" onclick="start()" /> <input type="text" id="txt" /> <input type="button" value="stop" onclick="stop()" /> <input type="button" value="zeruj" onclick="zeruj()" />... Copyright Roman Simiński Strona : 17

Zdarzenia sterowane czasem settimeout i cleartimeout JavaScript pozwala na asynchroniczne, wielokrotne wykonywanie wskazanego kodu po upływie zadanego czasu. Służą do tego funkcje: setinterval() wykonuje wskazany kod JavaScript po upłynięciu zadanego czasu; clearinterval() anulowanie ustawień określonych funkcją setinterval(). Funkcja settimeout() wykonuje przypisaną jej akcję tylko raz. Forma wywołania: var timeobject = setinterval( "kod w j ę zyku JavaScript", czas_w_milisekundach ); Funkcja clearinterval() zeruje ostawienia dla obiektu będącego rezultatem funkcji setinterval(): clearinterval( timeobject ); Copyright Roman Simiński Strona : 18

Zdarzenia sterowane czasem setinterval i clearinterval, przykład var timeoutobject; var sek = 0; function display() document.getelementbyid( "txt" ).value = sek++; function start() display(); timeoutobject = setinterval( "display()", 1000 ) function stop() clearinterval( timeoutobject ); function zeruj() document.getelementbyid( "txt" ).value = sek = 0;... <h1>głupiutki stoper</h1> <input type="button" value="start" onclick="start()" /> <input type="text" id="txt" /> <input type="button" value="stop" onclick="stop()" /> <input type="button" value="zeruj" onclick="zeruj()" />... Copyright Roman Simiński Strona : 19