Umieszczanie skryptów

Podobne dokumenty
Umieszczanie kodu. kod skryptu

Zdarzenia Zdarzenia onload i onunload

Krótki kurs JavaScript

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

CZYM JEST JAVASCRIPT?

Wykład 03 JavaScript. Michał Drabik

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

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

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

Podstawy JavaScript ćwiczenia

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

Kurs WWW wykład 6. Paweł Rajba

Zajęcia 4 - Wprowadzenie do Javascript

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

Tworzenie Stron Internetowych. odcinek 10

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

HTML ciąg dalszy. Listy, formularze

Rys.2.1. Drzewo modelu DOM [1]

Podstawy programowania w języku JavaScript

Tworzenie aplikacji internetowych E14

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 w dokumentach HTML (2)

FORMULARZE Formularz ma formę ankiety, którą można wypełnić na stronie. Taki formularz może być np. przesłany pocztą elektroniczną .

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

1 Podstawy c++ w pigułce.

Dodanie nowej formy do projektu polega na:

XML extensible Markup Language. część 5

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

Funkcje i instrukcje języka JavaScript

Kurs HTML 4.01 TI 312[01]

JAVAScript w dokumentach HTML - przypomnienie

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

Bazy Danych i Usługi Sieciowe

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

XML extensible Markup Language. część 5

Aplikacje WWW - laboratorium

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

JavaScript. mgr inż. Remigiusz Pokrzywiński

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

1 Podstawy c++ w pigułce.

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

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

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

DOM (Document Object Model)

Okna, ramki i ciasteczka

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

Cw.12 JAVAScript w dokumentach HTML

Podstawy Programowania C++

XHTML, CSS i JavaScript. Pierwsza pomoc

Aplikacje internetowe

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

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

Aplikacje WWW - laboratorium

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

Programowanie w języku Python. Grażyna Koba

Ćwiczenie: JavaScript Cookies (3x45 minut)

Visual Basic for Applications. Formatki tworzenie,

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

Politechnika Poznańska Wydział Budowy Maszyn i Zarządzania

Witryna internetowa. Należy unikać w nazwach plików używania polskich znaków.

TECHNOLOGIE INTERNETOWE WYKŁAD 6. JavaScript Funkcje i obiekty

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

LABORATORIUM 2 WSTĘP DO SIECI TELEINFORMATYCZNYCH TABELE I FORMULARZE

PRÓBNY EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE CZĘŚĆ PISEMNA

Ćwiczenie 7 - Formularze

JQuery. $('#pierwszy').css('color','red').hide('slow').show(3000); $(document).ready(function() { //... tutaj nasze skrypty jquery //...

Programowanie internetowe

JavaScript obiektowość

FORMULARZE. G. Przęczek

Projektowanie stron WWW

Źródła. cript/1.5/reference/ Ruby on Rails: AJAX: ssays/archives/

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości

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

JAVAScript w dokumentach HTML (1)

PHP: bloki kodu, tablice, obiekty i formularze

WYKŁAD 5 BIBLIOTEKA JQUERY CZĘŚĆ 1

ZAAWANSOWANE BAZY DANYCH I HURTOWNIE DANYCH MySQL, PHP

Dokumentacja Skryptu Mapy ver.1.1

Materiały do laboratorium MS ACCESS BASIC

za pomocą: definiujemy:

Zaawansowane aplikacje internetowe

Wprowadzenie do języka JavaScript

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Pętle. Dodał Administrator niedziela, 14 marzec :27

Aplikacje WWW - laboratorium

5-6. Struktura dokumentu html. 2 Określenie charakteru i tematyki strony. Rodzaje witryn. Projekt graficzny witryny. Opracowanie skryptów

Podstawy Programowania Podstawowa składnia języka C++

HTML (HyperText Markup Language) hipertekstowy język znaczników

Obiektowe bazy danych

Wykład 5: PHP: praca z bazą danych MySQL

Pozycjonowanie i poruszanie warstw

SSK - Techniki Internetowe

Tablica zawierająca odniesienia do znajdujących się w dokumencie obiektów typu Anchor.

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

Instrukcja redaktora strony

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

Zakres treści Czas. 2 Określenie charakteru i tematyki strony. Rodzaje witryn. Projekt graficzny witryny. Opracowanie skryptów

I Tworzenie prezentacji za pomocą szablonu w programie Power-Point. 1. Wybieramy z górnego menu polecenie Nowy a następnie Utwórz z szablonu

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

Transkrypt:

JAVASCRIPT

Definicja Zamierzeniem projektantów JS było rozszerzenie możliwości języka HTML w taki sposób, aby strony stały się bardziej atrakcyjne pod względem sposobu prezentacji danych oraz możliwości interakcji z użytkownikiem. W 1995 roku, na mocy porozumienia z firmą Sun Microsystems, w zamian za włączenie do przeglądarki Netscape obsługi technologii Java, język otrzymał oficjalną nazwę JavaScript. JavaScript jest przede wszystkim językiem skryptowym to znaczy interpretowanym. Nie musi zostać skompilowany do kodu maszynowego, aby można było zobaczyć efekty jego działania. Wystarczy nam do tego przeglądarka internetowa, która ten język obsługuje czyli w zasadzie każda z liczących się na rynku aplikacji. Ze względów bezpieczeństwa JavaScript ma znacznie ograniczone uprawnienia dostępu do zasobów komputera, przy użyciu którego przeglądana jest dana strona, a wszelkie odwołania do funkcji i obiektów wykonywane są w trakcie wykonywania programu 2

Umieszczanie skryptów Skrypt umieszczamy w parze znaczników <script> </script> w sekcji <head> lub <body> <script type="text/javascript"> kod skryptu </script> 3

Umieszczanie skryptów <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>strona ze skryptami JavaScript</title> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <script type="text/javascript" src="skrypty.js"></script> </head> <body> <script type="text/javascript"> kod skryptu </script> </body> </html> 4

Wyświetlanie tekstu na stronie Za wyświetlanie tekstu na stronie odpowiada instrukcja document.write document.write(ʺwyświetlany tekst ʺ); Kilka tekstów/części łączymy znakiem + document.write(ʺtekstʺ+zmienna+ tekst ); 5

Komentarze Dodatkowe informacje dla programisty możemy umieścić jako komentarze // komentarz jednowierszowy Lub /* Komentarz wielowierszowy */ 6

Okna dialogowe Okno informacyjne alert( treść komunikatu ); 7

Okna dialogowe Okno decyzyjne confirm( treść komunikatu ); 8

Okna dialogowe Okno tekstowe prompt( treść komunikatu, tekst dom ); 9

Typy danych Liczbowe liczby całkowite i rzeczywiste Łańcuchowe ciąg znaków w cudzysłowach Logiczne wartości prawda i fałsz Obiektowy obiekty wbudowane lub użytkownika Specjalne null lub undefined Tablicowe tablica wartości 10

Zmienne Zmienne w JS deklarujemy za pomocą słówka kluczowego var var nazwa_zmiennej; Powinniśmy również przypisać warość początkową do zmiennej var nazwa_zmiennej = wartość; 11

Zmienne - tablice Tablice w JS deklarujemy za pomocą słówka kluczowego var podobnie jak inne zmienne, jednak od razu powinniśmy zdefiniować zawartość tablicy var tablica = [ 1, 2, Jan, Kowalski, Warszawa ]; Każdy element tablicy jest identyfikowany przez indeks. Pierwszy element ma indeks 0. Np.. tablica[0] = 5; - to zmiana elementu o indeksie 0 z 1 na 5 12

Operacje na tablicach Funkcja/Właściwość Opis Przykład length push() Podaje liczbę elementów tablicy Dodaje element na końcu tablicy Tablica.length; tab[tab.length -1] Tab.push(2); Tab.push(2,4,6); 13

Operatory matematyczne Symbol Opis + Dodawanie - Odejmowanie * Mnożenie / Dzielenie 14

Instrukcja warunkowa If.else Pozwala na podjęcie decyzji w programie, i zależnie czy badany warunek jest prawdziwy, czy fałszywy wykonywane są konkretne instrukcje. If (warunek) { instrukcja; } else { instrukcja; } 15

Pętle Są to konstrukcje które mają na celu cykliczne powtarzanie wybranych instrukcji Istnieją 3 rodzaje pętli while do while for 16

Pętla while Instrukcje są powtarzane aż do czasu kiedy warunek występujący po while osiągnie wartość fałsz while(warunek) { Instrukcje; } 17

Pętla do while Pętla podobna do poprzedniej z tym że w tym przypadku nawet jeżeli warunek od razu przyjmie wartość fałsz to wykona się chociaż raz do { Instrukcje; } while(warunek) 18

Pętla for Pozwala na wykonanie instrukcji określoną ilość razy for(wyr_pocz;warunek;wyr_mod) { Instrukcje; } 19

Konwersja typów +(zmienna) konwertuje zmienną tekstową na liczbę, jeżeli jest to możliwe isfinite(zmienna) - zwraca true jeżeli zmienna ma wartośc nieskończoność isnan(zmienna) - zwraca true jeżeli zmienna nie jest liczbą ("Not a Number") 20

Konwersja typów Number(zmienna) - sprawdza czy zmienna jest typu liczbowego (zwraca NaN jeżeli nie, zwraca wartość jeżeli tak) parsefloat(zmienna) - konwersja zmiennej do typu float parseint(zmienna) - konwersja zmiennej do typu int (liczbowego) 21 tostring(zmienna) - konwersja zmiennej do typu łańcuchowego

Funkcje Zamknięte skrypty które można wielokrotnie wykorzystywać odwołując się do jego nazwy i podając ewentualne argumenty. function nazwa(argument1,argument2) { Instrukcje; } 22

Funkcja zwracanie wartości Funkcja może zwracać wartość, za pomocą umieszczenia na końcu funkcji słowa return zmienna; 23

Obiekty wprowadzenie Obiekt to konstrukcja programistyczna która składa się z: Właściwości(zmienne, obiekty) Metody(funkcje) 24

Deklaracja obiektu var nazwa_zmiennej { właściwość: wartość, właściwość: wartość }; 25

Odnoszenie się do obiektu Do obiektu odnosimy się podając jego nazwę i po kropce nazwę właściwości. Taką wartość możemy przypisać do innej zmiennej jak również zmienić wartość właściwości w ten sposób. nazwa_obiektu.właściwość; 26

Dodawanie i usuwanie właściwości Aby dodać nową właściwość do obiektu wystarczy podaj nazwę obiektu, nazwę właściwości i wartość. obiekt.właściwość = wartość; Aby usunąć właściwość podajemy słowo delete, obiekt i nazwę właściwości. delete obiekt.właściwość; 27

Metody Jak to zostało wcześniej wspomniane obiekty poza właściwościami zawierają również metody. Metoda to przeważnie funkcja zaimplementowana w obiekcie i pozwalająca wykonywać operacje na składnikach obiektu. var osoba = { imie:"jan", nazwisko:"kowalski", wiek: 40, Miasto:"Warszawa", wyp_imie:function() { document.write("witam ma ma imię: "+imie); } }; 28

Model DOM Kiedy ładowana jest strona wczytywany jest jej model DOM który składa się ze specjalnych tworów nazywanych węzłami. Wyróżniamy ich cztery rodzaje: Węzeł document główny węzeł dokumentu, Węzły elementów węzły opisujące strukturę dokumentu( h1, p, ul itp.), Węzły atrybutów Węzły tekstowe jest to tekst przechowywany w węźle elementu. 29

30

Dostęp do elementów na stronie getelementbyid( id ) queryselector( selektor css ) getelementsbytagname( nazwa Znacznika ) getelementsbyclassname( klas a ) queryselectorall( li[id] ) Pobranie elementu na podstawie identyfikatora Wykorzystanie składni selektora css do wybrania elementu Wybranie elementów na podstawie nazwy znacznika Wybranie elementów na podstawie nazwy klasy Wykorzystanie składni selektora css do wybrania elementu lub elementów 31

32 Dostęp do elementów na stronie

Obiekt Window Obiekt window jest obiektem najwyższego poziomu w dokumencie HTML. Właściwości frames[] macierz ramek potomnych w oknie; porządek w macierzy odpowiada porządkowi definiowania w dokumencie frames.length liczba zdefiniowanych ramek self bieżące okno parent okno rodzicielskie ramki potomnej w zestawie zdefiniowanym znacznikiem <FRAMESET> top okno najwyższego rzędu, które jest właścicielem wszystkich widocznych ramek; okna 'top' są swymi własnymi rodzicami status komunikat pojawiający się w pasku stanu okna przeglądarki defaultstatus komunikat pojawiający się w pasku stanu okna przeglądarki standardowo, które oczekuje na wprowadzenie jakichś danych przez użytkownika name wewnętrzny identyfikator okna otwartego metodą window.open() (może być niezdefiniowany) 33

Obiekt Window Metody alert("komunikat") wyświetla okienko dialogowe "JavaScript Alert" z podanym komunikatem confirm("komunikat") wyświetla okno dialogowe "Confirm" (tj. okienko z przyciskiem OK i przyciskiem CANCEL) z podanym komunikatem; zwraca TRUE po użyciu przycisku OK, zaś FALSE po użyciu przycisku CANCEL prompt("komunikat") wyświetla okno dialogowe "Prompt" z podanym komunikatem, które oczekuje na wprowadzenie jakichś danych przez użytkownika open("url","nazwa") otwiera na ekranie nowe okno, nadaje mu wewnętrzny identyfikator "nazwa" i ściąga do niego dokument wskazany lokalizatorem "URL" close() zamyka okno z dokumentem, w którym znajduje się instrukcja użycia tej metody ("samobójstwo okna") 34

Obiekt location Obiekt location zawiera informacje o bieżącym adresie URL. Właściwości href łańcuch zawierający cały adres URL dokumentu protocol łańcuch zawierający początek adresy URL wraz z pierwszym dwukropkiem; przykładową wartością może być "http:" (HyperText Transfer Protocol) lub wartość "javascript:" (określa kod JavaScript) host łańcuch zawierający nazwę serwera, nazwę domeny, np. 'www.domena.pl' hostname łańcuch zawierający pełną nazwę serwera łącznie z numerem portu, przykład 'www.domena.pl:80 następująco: '?x=3&y=7' 35

Obiekt location Obiekt location zawiera informacje o bieżącym adresie URL. Właściwości port łańcuch określający używany przez serwer port komunikacyjny; jeśli nie zostanie określona wartość portu, wtedy przyjmie on wartość 80; port jest numerem kanału wejściowego na serwer pathname łańcuch zawierający część adresy URL, tj. po trzecim ukośniku, np. '~userkatalogindex.html' hash łańcuch rozpoczynający się od '#', który określa nazwę zakotwiczenia w dokumencie; powoduje przejście do zakotwiczenia bez odświeżania dokumentu search łańcuch rozpoczynający się znakiem '?', który określa zapytanie w adresie URL; może on wyglądać następująco: '?x=3&y=7' 36

Obiekt location Metody assign(url) wczytuje dokumento adresie wskazanym przez argument url Reload(force) wymusza ponowne wczytanie bieżącej strony Replace(url) zastępuje bierzący dokument przez wczytany spod adresu wskazanego przez URL. 37

Obiekt Date Metody getday() zwraca dzień tygodnia getdate() zwraca dzień miesiąca gethours() zwraca wartość reprezentującą godzinę getminutes() zwraca wartość reprezentującą minuty getmonth() zwraca wartość reprezentującą numer miesiąca getseconds() zwraca wartość reprezentującą sekundy gettime() zwraca wartość numeryczną określającą czas; wartość w milisekundach getyear() zwraca rok 38

Obiekt Date Metody setdate() ustawia dzień miesiąca sethour() ustawia godzinę setminutes() ustawia minutę setmonth() ustawia miesiąc setseconds() ustawia sekundy settime() ustawia wartość obiektu Date; wartość w milisekundach setyear() ustawia rok togmtstring() zwraca datę w systemie GMT tolocalestring() zwraca datę w formacie lokalnym parse(date) zwraca ilość milisekund, jakie upłynęły od 1 stycznia 1970, 00:00:00 39

Obiekt String Obiekt string przechowuje dane w postaci łańcucha znakowego Właściwości length zwraca wartość liczbową charakteryzującą ilość znaków w łańcuchu Metody big() zwiększa rozmiar czcionki; odpowiednik znacznika <BIG>; przykład tekst = "Cześć!" tekst.big();// zwraca łańcuch "<BIG>Cześć!</BIG>" blink() tekst migający; odpowiednik znacznika <BLINK> bold() tekst pogrubiony; odpowiednik znacznika <B> 40

Obiekt String italics() tekst pochylony; odpowiednik znacznika <I> small() zmniejsza rozmiar czcionki; odpowiednik znacznika <SMALL> sub() odpowiednik znacznika <SUB> strike() tekst przekreślony; odpowiednik znacznika <STRIKE> sup() odpowiednik znacznika <SUP> 41

Zdarzenia To operacje jakie zachodzą po spełnieniu określonego warunku. Możemy je podzielić na: Zdarzenia myszy Zdarzenia klawiatury Zdarzenia dokumentu Zdarzenia formularza 42

Stosowanie zdarzeń Zdarzenia stosujemy wraz z elementem którego reakcji ma dotyczyć np.: <p onmouseover= kolor_tla( green ) > tlo zielone</p> 43

Dostępne zdarzenia Nazwa Elementy Zdarzenie onabort Obraz Anulowanie podrania grafiki onblur Okno, elementy formularza Usuniecie aktywności pola onchange Text, textarea, select Zmiana wartości onclick Dowolny znacznik Kliknięcie znacznika ondblclick Dowolny znacznik Podwójne kliknięcie znacznika ondragdrop Okno Przeciągnięcie obiektu poza okno onerror Obraz, okno Błąd podczas ładowania onfocus Okno, elementy formularza Uaktywnienie elementu onkeydown Dokument, obraz, link, textarea Wciśnięcie klawisza na klaw.(przytrzymanie) onkeypress Dokument, obraz, link, textarea Wciśnięcie klawisza na klaw.(krótkotrwałe) onkeyup Dokument, obraz, link, textarea Puszczenie klawisza 44 onload Ciało dokumentu Ładowanie strony

Dostępne zdarzenia Nazwa Elementy Zdarzenie onmousedown Dokument, przycisk, link Wciśnięcie klawisza myszy(przytrzymanie) onmouseout Wszystko Opuszczenie danego obszaru przez kursor myszy onmouseover Wszystko Najechanie kursorem nad dany obszar onmouseup Wszystko Puszczenie klawisza myszy onmove Okno Poruszenie oknem onreset Formularz Wyczyszczenie formularza onresize Okno Zmiana rozmiaru okna onselect Text, textarea Wybranie danego elementu onsubmit Formularz Zatwierdzenie formualrza onunload Ciało dokumentu Zamknięcie strony 45

Formularze Formularze to konstrukcje w programowaniu internetowym które służą głównie do zbierania informacji od użytkownika i przesyłania ich na serwer. Elementy formularza wprowadzamy w znacznikach <FORM></FORM> 46

Pole tekstowe Jest podstawowym rodzajem pola tekstowego. Ma ono wysokość jednej linii tekstu i określoną długość. Można do niego wpisywać tekst, który później zostanie wysłany wraz z formularzem, jako odpowiedź na zadane pytanie. <input type="text" name="nazwa" /> 47

Hasło Od zwykłego pola tekstowego różni się tylko tym, że podczas wpisywania do niego tekstu, nie są widoczne podawane znaki, ale jedynie gwiazdki ("*"). Można również stosować dokładnie te same atrybuty. <input type="password" name="nazwa" /> 48

Pole wyboru Polecenie to spowoduje wyświetlenie pola w postaci kwadratu (pole wyboru), które można zaznaczyć, a także "odznaczyć", myszką. Dzięki niemu możesz wprowadzić pytanie, przy którym można wybrać kilka spośród podanych gotowych odpowiedzi. <input type="checkbox" name="nazwa" value="wartość" />Tu wpisz opis pola 49

Etykieta Dodanie opisu na formualrzu czy do elementu. <label><input type="checkbox" name="nazwa" value="wartość" /> To jest etykieta pola obok</label> 50

Pole radiowe Umożliwia dokonanie jednego wyboru spośród możliwych opcji. W przypadku obsługi za pomocą JS wymaga atrybutu id <input type="radio" name="nazwa" value="wartość" />Tu wpisz opis pola 51

Lista rozwijana Polecenie pozwala wprowadzić listę rozwijalną (menu) - inaczej zwaną również polem kombi - z której możemy wybrać jedną (typ podstawowy) lub kilka możliwości (typ rozszerzony) - za pomocą klawisza Ctrl. <select name="nazwa"> <option>tu wpisz pierwszą możliwość</option> <option>tu wpisz drugą możliwość</option> (...) </select> 52

Obszar tekstowy Polecenie to wyświetla na ekranie wieloliniowe pole tekstowe (obszar tekstowy). Pozwala ono na wprowadzenie pewnego dłuższego komentarza przez użytkownika, który wypełnia formularz. <textarea name="nazwa" cols="x" rows="y">tu wpisz tekst który pojawi się domyślnie</textarea> 53

Przycisk Wprowadza na formularz przycisk <input type="button" value="napis" /> Type może być: "submit" - przycisk wysłania formularza "reset" - przycisk wyczyszczenia danych "button" - zwykły przycisk (domyślnie) 54

55 Jquery - postawy

Dołączanie pliku <script src="js/jquery-1.6.3.min.js"></script> $(document).ready(function() { // to jest miejsce na nasz kod }); </script> 56

Model DOM (Document Object Model) html body head h1 div title 57

Selektory $('selektor') Przykład: $('#banner') $('#banner').html('<h1>byłem tu, JavaScript</h1>'); - zmiana tekstu w znacznikach h1 na stronie $('.submenu').hide(); - ukrycie elementów na stronie 58

Selektory zaawansowane Selektor potomka $('#navbar a') wszystkie znaczniki a w ramach id navbar Selektor dziecka $('body > p') bezpośredni potomek body Selektory elementów sąsiadujących $('h2 + div') 59

Selektory zaawansowane Selektory atrybutów $('img[alt]') $('input[type="text"]') określona wartość $('input[type^="http://"]') zaczyna się od.. $('a[href$=".pdf"]') kończy się na $('a[href*="missingmanuals.com"]') zawiera ciąg znaków 60

Filtry jquery $(`selektor:filtr`) $('tr:even'), lub $('.stripped tr:even') pobiera parzyste elementy kolekcji $('p:first'); - pierwszy element z grupy $('p:last'); - ostatni element z grupy $('a:not(.navbutton)') lub $('a:not([href^="http://"])'); - nie pasuje do wywołania $('li:has(a)'); - pobiera elementy li zawierające a $('a:contains(kliknij mnie!)'); - pobiera elementy zawierające podany tekst 61

Filtry jquery - cd $('div:hidden').show(); - pobiera elementy ukryte ( właściwość display na none) a funkcja je pokazuje $('div:visible') pobiera elementy widoczne 62

Automatyczne pętle JQ wykonuje automatycznie pętle na kolekcji $('#slideshow img').hide(); - pobiera wszystkie znaczniki img z id slideshow i ukrywa je. 63

Łańcuchy wywołań funkcji $('#popup').width(300).height(300).text('siema!').fade In(1000); $('#popup').width(300).height(300).text('siema!').fadein(1000); Zmiana rozmiarów elementu o id popup, wyświetlenie tekstu który potem zanika 64

Dodawanie treści do stron.html() funkcja odczytuje kod wewnątrz danego elementu i może go zamienić $('#errors').html('<p>w formularzu odnaleziono cztery błędy.</p>');.text() działa podobnie jak html ale nie akceptuje znaczników $('#errors h2').text('nie znaleziono błędów!'); - zmienia tekst w h2.append() dodaje przekazany kod html jako ostatni w danym znaczniku $('#errors').append('<p>w formularzu znaleziono cztery błędy.</p>'); 65

Dodawanie treści do stron cd..prepend() dodaje kod html bezpośrednio na początku danego elementu, zaraz po znaczniku otwierającym $('#errors').prepend('<p>w formularzu znaleziono cztery błędy.</p>');.before(),.after() dodają przed i za danym znacznikiem html nowy kod. $('#username').after('<span class="error">nazwa użytkownika jest wymagana</span>'); 66

Zastępowanie i usuwanie wybranych elementów.remove() usuwa wybrane elementy ze strony $('#popup').remove();.replace() zamienia dany element/ty $('#product101').replace('<p>dodano do koszyka.</p>'); 67

Ustawianie i odczyt atrybutów znaczników addclass() dodaje do elmentu nazwę klasy $('a[href^="http://"]').addclass('externallink'); <a href="http://helion.pl/"> na <a href="http://helion.pl/" class="externallink"> removeclass() usuwa klasę z elementu $('#alertbox').removeclass('highlight'); toggleclass() dodawana do kontrolki (np. przycisk) naprzemiennie dodaje i usuwa klasę $('#changestyle').click(function() { $('body').toggleclass('altstyle'); }); 68

Ustawianie i odczyt atrybutów znaczników css() wprowadzanie bezpośrednich zmian we właściwościach css elementów var bgcolor = $('#main').css('background-color'); - pobiera właściwość $('body').css('font-size', '200%'); lub $('.pullquote').css('padding', 100); - ustawia właściwość var basefont = $('body').css('font-size'); basefont = parseint(basefont,10); $('body').css('font-size',basefont * 2); - odzczyt właściwości a następnie zmiana jej na 2 razy większą. 69

Ustawianie i odczyt atrybutów znaczników Wykorzystanie literałów obiektowych do zmiany wielu właściwiści funkcją css() $('#highlighteddiv').css({ 'background-color' : '#FF0000', 'border' : '2px solid #FE0037' }); Można też tak: $('#highlighteddiv').css('background-color','#ff0000').css('border','2px solid #FE0037'); 70

Odczyt, ustawienia i usuwanie atrybutów HTML attr() odczyt/zmiana wartości atrubutu znacznika html var imagefile = $('#banner img').attr('src'); - pobranie wartości $('#banner img').attr('src','images/newimage.png'); - zmiana wartości atrybutu removeattr() usuwa atrybut ze znacznika $('body').removeattr('bgcolor'); 71

Wykonanie akcji na każdym elemencie kolekcji fadeout() stopniowe ukrycie elementów $('img').fadeout(); each() powoduje wykonanie czegoś na każdym elemencie z kolekcji $('selektor').each(); Dla użycia funkcji each() potrzebujemy funkcji anonimowej: $('selektor').each(function(){ // tu jest umieszczony kod funkcji }); 72

Funkcja each() cd. $('img').each(function() { alert('znaleziono obrazek.'); }); - jak mamy 50 obrazków na stronie to 50 razy otrzymamy komunikat $(this)- pobiera aktualny element podczas wykonywania pętli $('a[href^="http://"]).each(function(){ var extlink = $(this).attr('href'); $('#biblist').append('<li>' + extlink + '</li>'); }); jak na stronie istnieje lista to można utworzyć listę odnośników do stron zewnętrznych 73

Zdarzenia -mysza click pojedyncze kliknięcie dblclick podwójne kliknięcie mousedown przytrzymanie klawisza myszy mouseup zwolnienie przycisku myszy mouseover kursor nad elementem mouseout kursor poza elementem mousemove przy ruchu myszy 74

Zdarzenia - okno i dokument load po załadowaniu wszystkich elementów strony resize zmiana rozmiaru okna scroll przy przewijaniu zawartości strony unload zamknięcie okna, przejście do nowej strony, zamknięcie dokumentu 75

Zdarzenia - formularze submit przy wysyłaniu formularza reset wyczyszczenie zmian w formularzu change zmiana stanu pola (kliknięcie, wybranie z listy rozwijanej itp.) focus wybór pola poprzez kliknięcie lub klawisz Tab blur odwrotność focus, kiedy opuścimy pole 76

Zdarzenia - klawiatura keypress przy naciśnięciu klawisz keydown przy naciśnięcu klawisza podobnie jak keypress ale przed nim aktywowane keyup w momencie zwolnienia klawisza 77

Obsługa zdarzeń $('a').mouseover(); - przypisanie zdarzenia mouseover do każdego odnośnika na stronie $('#menu').click(); - dodanie zdarzenia click do elementu o id = menu Samo przypisanie zdarzenia nie spowoduje działania. Do jego obsługi konieczna jest funkcja 78

Obsługa zdarzeń cd. Samo przypisanie zdarzenia nie spowoduje działania. Do jego obsługi konieczna jest funkcja. $('#start').click(startslideshow); - wywołanie funkcji startslideshow, Uwaga: W wywołaniu funkcji nie ma nawiasów. Wywołanie $('#start').click(startslideshow()); jest błędne 79

Obsługa zdarzeń cd. Można również do wywołania funkcji używać funkcji anonimowych: function() { // Tu kod funkcji. } $('#menu').mouseover(function() { }); $('#submenu').show(); 80

Zdarzenia występujące w JQ hover() łączy w sobie zdarzenia mousover i mouseout. $('#selektor').hover(funkcja1, funkcja2); - pierwsza funkcja działa jak mousover druga jak,mouseout $('#menu').hover( function() { $('#submenu').show(); }, function() { $('#submenu').hide(); }); // koniec hover 81

Zdarzenia występujące w JQ toggle() działa podobnie do hover ale reaguje na pojedyncze kliknięcia, pierwsze to pierwsza funkcja a drugie to druga funkcja. Można również dodać kolejne funkcje wtedy uruchamiane kolejnymi kliknięciami function showsubmenu() { $('#submenu').show(); } function hidesubmenu() { $('#submenu').hide(); } $('#menu').toggle(showsubmenu, hidesubmenu); 82

Obiekt zdarzenia W momencie wystąpienia zdarzenia przeglądarka zapisuje dane o nim w obiekcie zdarzenia, który w JQ jest dostępny w funkcji obsługującej zdarzenie a aby się tam dostać potrzebujemy parametrów. $(document).click(function(evt) { var xpos = evt.pagex; var ypox = evt.pagey; alert('x:' + xpos + ' Y:' + ypos); }); // koniec click 83

84 Właściwości zdarzenia

Zdarzenia domyślne Przeglądarki mają wbudowane domyślne reakcje na niektóre zdarzenia, jednak nie zawsze jest to pożądane, np. submit() jeżeli użytkownik pominął dane w formularzu. $('#menu').click(function(evt){ // Kod JavaScript. evt.preventdefault(); // Program nie przejdzie do strony z menu. }); 85

Zdarzenia - usuwanie unbind() usuwa zdarzenie przypisane do znacznika 1 $('a').mouseover(function() { 2 alert('kursor znajduje się nade mną!'); 3 }); 4 $('#disable').click(function() { 5 $('a').unbind('mouseover'); 6 }); - po kliknięciu elementu o id disable komunikat pojawiający się po najechaniu kursorem na link nie będzie się pojawiał. 86

Zdarzenia przekazywanie stoppropagation() zatrzymuje przekazywanie zdarzeń dalej. $('#thelink').click(function(evt){ // Wykonywane operacje. evt.stoppropagation(); // Zatrzymuje // przekazywanie zdarzenia. }); 87