Wszechnica Poranna: Tendencje w rozwoju informatyki i jej zastosowań Do czego można wykorzystać język JavaScript. Krzysztof Ciebiera
|
|
- Zbigniew Włodarczyk
- 9 lat temu
- Przeglądów:
Transkrypt
1 Wszechnica Poranna: Tendencje w rozwoju informatyki i jej zastosowań Do czego można wykorzystać język JavaScript Krzysztof Ciebiera
2 Do czego można wykorzystać język JavaScript
3 Rodzaj zajęć: Wszechnica Poranna Tytuł: Do czego można wykorzystać język JavaScript Autor: mgr Krzysztof Ciebiera Redaktor merytoryczny: prof. dr hab. Maciej M Sysło Zeszyt dydaktyczny opracowany w ramach projektu edukacyjnego Informatyka+ ponadregionalny program rozwijania kompetencji uczniów szkół ponadgimnazjalnych w zakresie technologii informacyjno-komunikacyjnych (ICT). kontakt@informatykaplus.edu.pl Wydawca: Warszawska Wyższa Szkoła Informatyki ul. Lewartowskiego 17, Warszawa rektorat@wwsi.edu.pl Projekt graficzny: FRYCZ I WICHA Warszawa 2009 Copyright Warszawska Wyższa Szkoła Informatyki 2009 Publikacja nie jest przeznaczona do sprzedaży.
4 Do czego można wykorzystać język JavaScript Krzysztof Ciebiera Wydział Matematyki, Informatyki i Mechaniki, Uniwersytetu Warszawskiego ciebie@mimuw.edu.pl
5 < 4 > Informatyka + Streszczenie Zajęcia mają na celu przedstawienie możliwości języka JavaScript (JS) do wzbogacania stron i serwisów WWW o elementy interaktywne i graficzne. Na wykładzie zostaną zademonstrowane efekty wykorzystania fragmentów języka JS na stronach internetowych. Druga część wykładu będzie łagodnym wprowadzeniem do podstawowych konstrukcji tego języka, omówione zostaną: zmienne, instrukcje iteracyjne i warunkowe, liczby, napisy i tablice. Warsztaty będą okazją do praktycznego przećwiczenia wprowadzonych na wykładzie elementów języka JS. Głównym celem zajęć praktycznych będzie utworzenie własnego programu do zabawy w Sudoku. Program będzie mógł być zintegrowany z serwisem, na którym np. mogłyby być organizowane konkursy Sudoku. Do wzięcia udziału w tych zajęciach przydatna będzie, ale nie jest wymagana, elementarna znajomość języka HTML i programowania w jakimkolwiek języku. Planuje się zorganizowanie dla uczestników Projektu Informatyka + konkursu serwisów internetowych do rozgrywek w Sudoku. Spis treści 1. Wstęp Wymagania w stosunku do uczestników i sprzętu Przebieg warsztatów Używanie języka JS Instalujemy program Firebug Instalujemy bibliotekę jquery Zastępowanie zawartości elementów Pętla for Instrukcja if Funkcje Zmienne i ich zasięg Obsługa napisów i liczb Tablice Dynamiczne nadawanie elementom właściwości Reagowanie na akcje użytkownika Pomysły na dalsze rozszerzenia Literatura Dodatek. Listing programu... 18
6 > Do czego można wykorzystać język JavaScript < 5 > 1 WSTĘP W trakcie warsztatów przygotujemy przy użyciu języka JavaScript program do zabawy w Sudoku. Program zrealizujemy w taki sposób, aby możliwe było w miarę łatwe jego zintegrowanie z większym serwisem, na którym np. mogłyby być organizowane konkursy Sudoku. Co to jest Sudoku Sudoku jest łamigłówką logiczną. Na kwadratowej planszy 9x9, w niektórych jej polach są wpisane liczby od 1 do 9. Należy uzupełnić planszę liczbami od 1 do 9 tak, aby w żadnym wierszu, w żadnej kolumnie, ani w żadnym z dziewięciu głównych kwadratów (patrz rys. 1) nie powtarzała się ta sama liczba i aby wszystkie kwadraty były wypełnione. Jaki jest nasz cel Postaramy się zaprogramować planszę pokazaną na rys. 1. : Rysunek 1. Przykładowa, wypełniona poprawnie plansza Sudoku Przyjmujemy, że nasz program będzie miał następujące funkcjonalności: 1. Działa w przeglądarce WWW. 2. Wyświetla zagadkę Sudoku. 3. Umożliwia wprowadzanie rozwiązania. 4. Sprawdza, czy rozwiązanie jest poprawne. 2 WYMAGANIA W STOSUNKU DO UCZESTNIKÓW I SPRZĘTU CO NAM BĘDZIE POTRZEBNE DO NAPISANIA PROGRAMU Wyposażenie i wymagania niezbędne do realizacji postawionego zadania: 1. Przeglądarka WWW, najlepiej Firefox, ze względu na to, że w notatkach do warsztatów używamy programu Firebug, ale może być dowolna inna przeglądarka, byleby tylko uczestnik warsztatów umiał w niej debugować. 2. Dostęp do Internetu w celu zainstalowania oprogramowania jquery i Firebug. 3. Edytor tekstu. Najlepszy byłby edytor podkreślający składnię HTML i JavaScript (np. Geany), ale może być też notatnik w Windows.
7 < 6 > Informatyka + Co powinniśmy wcześniej umieć Niezbędne są dwie rzeczy: 1. Znajomość HTML w podstawowym zakresie, czyli: co to jest tabelka, formularz, odnośnik i jak to wszystko zapisać w postaci strony HTML. 2. Znajomość podstaw programowania w dowolnym języku w zakresie: co to jest zmienna, pętla i funkcja. Składnię i tak będziemy poznawać na bieżąco w miarę potrzeb. 3 PRZEBIEG WARSZTATÓW 3.1 UŻYWANIE JĘZYKA JS Nauczymy się podstaw korzystania z języka JavaScript(JS). Spróbujmy policzyć, ile to jest 3*(2+1). W tym celu: otwieramy edytor tekstu w którym można edytować źródła HTML (np. Notatnik, edytor vim lub podobny); wklejamy do niego tekst, który jest poniżej;. zapisujemy ten tekst w pliku pod nazwą kalkulator.html; otwieramy ten plik w przeglądarce. Oto tekst źródłowy kalkulatora: <html> <head><title>kalkulator</title></head> <body> <script type= text/javascript > alert(3*(2+1)); </script> </body> </html> Jeśli wszystko zrobiliśmy dobrze, to na stronie powinno się pokazać okienko z napisem 9, bo 3*(2+1) = 9. Zauważmy, że to proste ćwiczenie przekonuje nas, iż potrafimy już: 1. Napisać program w JS. 2. Wstawić program w JS do dokumetu w języku HTML. 3. Uruchomić program w JS. 4. Wyświetlić źródłowy tekst programu (klawisze Ctrl+U w przeglądarce Firefox). 5. Uruchomić program jeszcze raz w tym celu przeładowujemy stronę (klawisze Ctrl+R w Firefox). Zadania do samodzielnego wykonania 1. Sprawdź, czy poprawnie są wykonywane pozostałe operacje arytmetyczne (+, i, *, /). 2. Ponadto, sprawdź: Ile to jest (11 % 3) i dlaczego? Ile to jest (11 / 3) i dlaczego? Ile to jest (Math.round(11/3))? Ile to jest (3+1==4)? Ile to jest (2+4/7>1)? 3.2 INSTALUJEMY PROGRAM FIREBUG Mogłoby się wydawać, że teraz powinniśmy zacząć pisać nasze Sudoku, ale wstrzymajmy się z tym na chwilę. Zainstalujmy najpierw program Firebug, bedący rozszerzeniem przeglądarki Firefox, który pomoże nam w debugowaniu naszego programu, czyli w znajdowaniu i poprawianiu w nim błędów. Aby zainstalować program Firebug, należy wejść na stronę: nacisnąć przycisk Instaluj i postępować zgodnie z instrukcją. Po zrestartowaniu przeglądarki zauważymy małego robaczka w prawym dolnym rogu to oznacza, że program Firebug został zainstalowany. Zmieńmy kod programu i wpiszmy alert(3*(2+1); usunęliśmy ostatni nawias zamykajacy. I nic się nie stało. To dlatego, że Firebug nie wie, że chcemy, żeby działał. Klikamy na jego ikonce (ten robaczek) i zaznaczamy pola Konsola i Skrypt, a następnie klikamy przycisk Włącz wybrane panele dla Plików lokalnych patrz rys. 2.
8 > Do czego można wykorzystać język JavaScript < 7 > Rysunek 2. Uaktywnienie programu Firebug Po tej zmianie zauważymy, że w naszym skrypcie jest jeden błąd, a po jego kliknięciu na polu, w którym jest wyświetlana informacja o błędzie zobaczymy, na czym ten błąd polega i w którym jest wierszu, patrz rys. 3. Rysunek 3. Sygnalizacja błędu w skrypcie JS Zakładam, że od tej pory uczestnik warsztatów sam będzie sobie radził z błędami w składni JS. 3.3 INSTALUJEMY BIBLIOTEKĘ JQUERY Nie będziemy pisać w czystym języku JavaScript, tylko skorzystamy z pomocy biblioteki jquery. Ściągamy ją ze strony klikając przycisk Download(jQuery), a potem jeszcze raz na nazwie pliku z aktualną wersją biblioteki (np.jquery min.js). Następnie zmieniamy nazwę ściągniętego pliku na jquery.js i umieszczamy go w katalogu z innymi plikami, nad którymi pracujemy. Nasze Sudoku będzie korzystało z jquery. Aby sprawdzić, czy wszystko jest w porządku, zaczniemy tworzyć nasze Sudoku. Niech ma ono na razie następującą postać: <html> <head> <meta http-equiv= Content-Type content= text/html; charset=utf-8 /> <title>sudoku</title> <script type= text/javascript src= jquery.js ></script> <script type= text/javascript > $(document).ready(function() alert( Wczytane ); ) </script> </head> <body> <div id= plansza >Miejsce na planszę</div> </body> </html>
9 < 8 > Informatyka + Jeśli wszystko zrobiliśmy poprawnie, to po wczytaniu całej strony zostanie wyświetlone okienko z napisem Wczytane. Jeśli coś jest źle, to sprawdź za pomocą programu Firebug, czy nie popełniłeś błędu. Może nie przegrałeś w dobre miejsce pliku jquery.js? Może źle się on nazywa? W jaki sposób jest wyświetlany napis Wczytane? $(document).ready(function() alert( Wczytane ); ) JQuery udostępnia funkcję $(document).ready(function()..., gdzie w miejsce trzech kropek możemy wpisać dowolny program w JS, który powinien zostać uruchomiony po załadowaniu strony. W tym przypadku ten program składa się z jednej instrukcji alert( Wczytane ), która powoduje wyświetlenie okienka z napisem Wczytane. Teraz powinniśmy się zabrać za wyświetlenie planszy. 3.4 ZASTĘPOWANIE ZAWARTOŚCI ELEMENTÓW Najprościej byłoby przygotować planszę w języku HTML. Należałoby zrobić tabelę, składającą się z dziewięciu wierszy, każdy z nich składający się z dziewięciu kolumn a w każdej z kolumn jedno pole do wprowadzania wyników. Czyli należałoby napisać coś takiego: <table border=1> <tr><td><input...><td>...</tr>... </table> Widać, że utworzenie takiej tabeli jest bardzo proste. Załóżmy, że nasza plansza byłaby mniejsza, np. taka: <table border=1><tr><td>1<td>2<tr><td>3<td>4</table> Gdybyśmy od kogoś dostali zmienną, zawierającą taką planszę w postaci napisu, to naszym jedynym zadaniem byłoby spowodowanie, aby została wyświetlona plansza w bloku <div id= plansza >. Jak to zrobić w JS? Zamieńmy skrypt, który mamy na następujący: <script type= text/javascript > plansza = <table border=1><tr><td>1<td>2<tr><td>3<td>4</table> $(document).ready(function() $( #plansza ).html(plansza); ) </script> i przeładujmy stronę. W tej chwili już nie pokazuje się okienko z napisem Wczytane. Dzieje się coś dużo ciekawszego jest wyświetlana nasza plansza. Jak do tego doszło? W wierszu skryptu na zmienną plansza jest przypisywana wartość <table>...</table>. W wierszach jest tworzona funkcja, która zostanie uruchomiona po wyświetleniu HTML. W wierszu 3. zawartość elementu o identyfikatorze plansza, jest zastępowana przez wartość zmiennej plansza. Konstrukcja $( #identyfikator ).html(wartość), ustawia wartość elementu o identyfikatorze (atrybut id w HTML) identyfikator. Teraz tylko potrzebujemy zbudować planszę. 3.5 PĘTLA FOR Wyobraźmy sobie, jak nasza plansza mogłaby wyglądać? Dobrze, gdyby była kwadratowa i gdyby każde jej pole można było jednoznacznie zidentyfikować. Powiedzmy, że pierwszy wiersz zawiera pola z identyfikato-
10 > Do czego można wykorzystać język JavaScript < 9 > rami 11, 12, 13,..., 19. Drugi 21, 22,..., 29, i tak dalej, aż do 91, 92,..., 99. Aby zbudować taką planszę potrzebujemy dziewięć wierszy po dziewięć kolumn każdy. Aby powtórzyć jakąś operację dziewięć razy wykorzystamy pętlę for, która w JS ma taką samą postać jak w języku Java czy C: for(i = 1; i <= 9; i++) Ta pętla zostanie wykonana dziewięć razy z wartościami i = 1, 2, 3,..., 9. Popatrzmy na program: $(document).ready(function() plansza = <table border=1> for(i = 1; i <= 9; i++) plansza += <tr> ; for(j = 1; j <= 9; j++) plansza += <td> ; plansza += i * 10 + j; plansza += </td> ; plansza += </tr> ; plansza += </table> $( #plansza ).html(plansza); ) Ten program zawiera dwie pętle for. Zewnętrzną, sterowaną zmienną i oraz wewnętrzną sterowaną zmienną j. Zewętrzna pętla buduje wiersze, a wewnętrzna kolumny. Używamy w tym programie kilku ciekawych konstrukcji: 1. plansza += <napis> ta instrukcja dokleja napis do planszy. 2. plansza += <liczba> ponieważ plansza jest napisem, to liczba zostanie również skonwertowana do napisu i zostanie doklejona do planszy. 3. i++ ta konstrukcja językowa powoduje zwiększenie wartości i o jeden. Oznacza ona to samo, co i = i for(i = 1; i <= 9; i++) to jest pętla for. Najpierw wartość i jest ustawiana na jeden. Następnie sprawdzane jest, czy i jest mniejsze lub równe dziewięć. Jeśli tak, to jest wykonywana instrukcja pętli i wartośći jest zwiększana o jeden. I znowu jest sprawdzane, czy i <= 9, jeśli tak, to wykonywana jest pętla, i jest podnoszone o jeden itd. Zadania do samodzielnego wykonania 1. Jaką wartość ma zmienna plansza przed przypisaniem jej do elementu #plansza? Możesz to sprawdzić na co najmniej dwa sposoby, używając instrukcji alert lub używając debuggera wbudowanego w program Firebug. 2. Dodaj do planszy kolumnę i wiersz z numeracją. 3. Wyróżnij (np. za pomocą szarego tła) co drugi wiersz. 3.6 INSTRUKCJA IF Gdy chcemy sprawić, aby fragment programu wykonał się jedynie po spełnieniu jakiegoś warunku, używamy instrukcji if. Jej składnia jest podobna do składni w językach C i Java: if (a == 0) alert( a jest równe zero!);
11 < 10 > Informatyka FUNKCJE Jeśli będziemy nasz program rozwijać w podobny sposób, to za chwilę stanie się nieczytelny. Dlatego podzielimy go na logiczne fragmenty przy użyciu funkcji. Funkcje w JS zachowują się inaczej niż w typowych językach programowania. Nie jest sprawdzane, czy do funkcji jest przekazywana odpowiednia liczba parametrów. Funkcja może zwracać swój wynik, ale nie musi. Nie jest sprawdzany typ tego wyniku, czyli funkcja może czasem zwracać liczbę, a czasem napis. Wydzielmy teraz z naszego programu funkcję budującą planszę: function Plansza(rozmiar) plansza = <table border=1> for(i = 1; i <= rozmiar; i++) plansza += <tr> ; for(j = 1; j <= rozmiar; j++) plansza += <td> ; plansza += i * 10 + j; plansza += </td> ; plansza += </tr> ; plansza += </table> return plansza; $(document).ready(function() $( #plansza ).html(plansza(6)); ) W naszym programie pojawiła się funkcja Plansza. Pobiera ona jeden parametr rozmiar i zwraca zbudowaną planszę za pomocą instrukcji return ZMIENNE I ICH ZASIĘG Moglibyśmy teraz wpaść na pomysł, aby podzielić funkcję budującą planszę na dwie części, z których jedna będzie budować wiersze, a druga składać je w całość. Przyjrzyjmy się następującemu programowi: function Wiersz(numer,rozmiar) wiersz = <tr> ; for(i = 1; i <= rozmiar; i++) //UWAGA: zmieniliśmy j na i! wiersz += <td> ; wiersz += numer * 10 + i; wiersz += </td> ; wiersz += </tr> ; return wiersz; function Plansza(rozmiar) plansza = <table border=1> for(i = 1; i <= rozmiar; i++) plansza += Wiersz(i, rozmiar)
12 > Do czego można wykorzystać język JavaScript < 11 > plansza += </table> return plansza; $(document).ready(function() $( #plansza ).html(plansza(6)); ) Ten program wygląda całkiem poprawnie, prawda? Niestety ma jedną wadę. Źle działa. Co się dzieje? Otóż wszystkie zmienne, których używamy wewnątrz funkcji są globalne. To znaczy, że zmienna i używana w pętli for w funkcji Plansza, to ta sama zmienna i, która jest używana w pętli for w funkcji Wiersz. W funkcji Wiersz ta zmienna zostanie podniesiona do wartości 6 i pętla w funkcji Plansza zostanie wykonana tylko raz. Podobnie zmienne wiersz i plansza są globalne! Co z tym zrobić? W języku JS do zdefiniowania zmiennej lokalnej służy słowo kluczowe var. Poprawmy zatem nasz program: <script type= text/javascript > function Wiersz(numer,rozmiar) //aa var wiersz = <tr> ; for(var i = 1; i <= rozmiar; i++) wiersz += <td> ; wiersz += numer * 10 + i; wiersz += </td> ; wiersz += </tr> ; return wiersz; function Plansza(rozmiar) var plansza = <table border=1> for(var i = 1; i <= rozmiar; i++) plansza += Wiersz(i, rozmiar) plansza += </table> return plansza; $(document).ready(function() $( #plansza ).html(plansza(6)); ) </script> Teraz ten program powinien już działać poprawnie. Zwróćmy uwagę na konstrukcję $( #plansza ).html(plansza(6)); Wywołuje ona funkcję Plansza z parametrem 6, a jej wynik przekazuje do funkcji html, która ustawia go jako zawartość elementu #plansza. Zadania do samodzielnego wykonania 1. Zmodyfikuj nasz program tak, aby wyświetlał tabliczkę mnożenia (z nagłówkiem). 2. Napisz program, który wyświetli trzy plansze o bokach 5, 7 i 9, jedna pod drugą. 3.9 OBSŁUGA NAPISÓW I LICZB Czas zastanowić się, w jaki sposób będziemy przechowywać nasze Sudoku. Ze względów technicznych (łatwość przesyłania po sieci) dobrym formatem jest przechowywanie Sudoku w postaci 81 znakowego napisu (czytanego
13 < 12 > Informatyka + od lewej do prawej z góry w dół) z zerami w miejscach, które pozostają do wypełnienia przez użytkownika. Opis Sudoku z rys. 1 wraz z funkcją budującą planszę mógłby mieć następująca postać: var opisplanszy = ; function wspolrzedne(i) if (i < 0 i > 80) alert( wspolrzedne: zle dane ); return Math.floor(i/9) + 10 * (i % 9) + 11; function Plansza(opis) var i; plansza = <table> ; for(i = 0; i < opis.length; i++) if (i % 9 == 0) plansza += <tr> ; plansza += <td class= field id= td + wspolrzedne(i) + > ; if (opis[i] == 0 ) plansza += <input type= text size= 1 maxlength= 1 id= i + wspolrzedne(i) + > ; else plansza += <input type= text size= 1 maxlength= 1 readonly= id= i + wspolrzedne(i) + value= +opis[i]+ > ; plansza += </td> ; if (i % 9 == 8) plansza += </tr> ; return plansza+ </table> ; ; $(document).ready(function() $( #plansza ).html(plansza(opisplanszy)); ) Math Math (formalnie jest to obiekt) udostępnia w JS następujące funkcje: Math.abs(a) // wartość bezwzględna a Math.ceil(a) // sufit a Math.floor(a) // podłoga a Math.max(a,b) // maksimum z a i b
14 > Do czego można wykorzystać język JavaScript < 13 > Math.min(a,b) // minimum z a i b Math.pow(a,b) // a do potęgi b Math.random() // pseudolosowa liczba od 0 to 1 Math.round(a) // zaokrąglenie a Math.sqrt(a) // pierwiastek kwadratowy z a W funkcji wspolrzedne korzystamy z Math.floor(), aby policzyć współrzędne i-tej komórki. Napisy JS udostępnia m.in. następujące funkcje do obsługi napisów: napis = ab + ca // łączenie (konkatenacja) napisów napis == abca // porównanie true napis[3] // czwarta litera napisu, czyli a napis.length // długość napisu, czyli 4 napis.indexof( b ) // pozycja pierwszego wystąpienia // b w napisie, czyli 1 napis.indexof( e ) // e nie występuje w napisie, // więc zwracane jest -1 napis.lastindexof( a ) // ostatnie wystąpienie a // w napisie 3 napis.substr(1,2); // od pozycji 1 (czyli drugiej // litery) zwróć dwie litery, // czyli bc Zadania do samodzielnego wykonania 1. Zmień program tak, aby sprawdzał, czy opis planszy zawiera jedynie cyfry. 2. Wydziel funkcję generującą pole input. 3. Zmień program tak, aby nie przechodził pętlą po napisie, ale po polach planszy (jak w przykładach w poprzednim punkcie). Nadawanie elementom właściwości HTML Nasza plansza nie wygląda ładnie. Na przykład nie ma na niej pionowych i poziomych kresek. Spróbujemy to zmienić. Biblioteka jquery służy m.in. do nadawania elementom właściwości HTML. Dodajmy do programu funkcję rysujkrawedzie i zmodyfikujmy $(document).ready tak, aby z tej funkcji korzystał: function rysujkrawedzie() var i; for(i = 0; i < 81; i++) if ((i + 1) % 3 == 0) $( #td +wspolrzedne(i)).css( border-right, 3px solid ); if (i % 9 == 0) $( #td +wspolrzedne(i)).css( border-left, 3px solid ); if (Math.floor(i / 9) % 3 == 0) $( #td +wspolrzedne(i)).css( border-top, 3px solid ); if (i > 71) $( #td +wspolrzedne(i)).css( border-bottom, 3px solid ); $(document).ready(function() $( #plansza ).html(plansza(opisplanszy)); rysujkrawedzie(); )
15 < 14 > Informatyka + Widzimy teraz, że zmodyfikowaliśmy szerokości ramki i nasze Sudoku wygląda ładniej. Ale jak się nam to udało zrobić? Przyjrzyjmy się instrukcji: $( #td +wspolrzedne(i)).css( border-right, 3px solid ); #td+wspolrzedne(i) to napis identyfikujący jedną z komórek tablicy (wcześniej rozsądnie ponumerowaliśmy wszystkie komórki po kolei ustawiając im właściwość id), a.css, to funkcja, która ustawia właściwość CSS. W tym przypadku ustawiamy prawą ramkę. Inne ważne właściwości elementów HTML to: background-color kolor tła; a lista kolorów: kolory można podawać w formacie #FFFFFF font-weight czy czcionka ma być pogrubiona (bold) text-decoration możliwość podkreślenia margin cztery (top, bottom, left, right) marginesy border ramki (np. border-top: 2px solid red) pudding odstęp od ramki width, height szerokość i wysokość elementu Jak widzimy na powyższym przykładzie, arkuszy styli CSS używa się nie tylko do utrzymywania spójnego stylu na wielu różnych stronach HTML, ale również do określania tego, w jaki sposób mają być prezentowane elementy strony HTML wtedy, gdy mamy do czynienia tylko z jedną stroną. Należy starać się oddzielać treść strony, w języku HTML od jej wyglądu, w postaci CSS. Zadania do wykonania 1. Zmień kolor wyświetlanych liter na czerwony. 2. Zmień kolor ramek na ładniejszy (chyba, że lubisz czarny). 3. Może uda Ci się doprowadzić do tego, żeby tekst w polach do wpisywania był wyśrodkowany? 3.10 TABLICE Zapewne będziemy chcieli umieć sprawdzić, czy w wierszach, kolumnach i kwadratach nie powtarza się dwa razy ta sama liczba. W tym celu watro mieć funkcje, które obliczają indeksy komórek w poszczególnych wierszach i kwadratach. Funkcje te mogłyby zwracać tablice (9-elementowe), zawierające te indeksy. Napiszmy je zatem i dołączmy je do programu, bo się za chwilę przydadzą: function wiersz(i) if (i < 1 i > 9) alert( wiersz: Zły wiersz ); w = new Array(); for(k = 10; k <= 90; k+=10) w.push(k+i); return w; function kolumna(i) if (i < 1 i > 9) alert( kolumna: Zły argument ); w = new Array(); for(k = 1; k <= 9; k++) w.push(i*10 + k); return w; function kwadrat(i)
16 > Do czego można wykorzystać język JavaScript < 15 > if (i < 1 i > 9) alert( kwadrat: Zły argument ); w = new Array(); x = ((i - 1) % 3) * 3 + 1; y = (Math.floor((i - 1) / 3)) * 3 + 1; for(dx = 0; dx <= 2; dx++) for(dy = 0; dy <= 2; dy++) w.push((x + dx) * 10 + dy + y); return w; Każda z funkcji zwraca tablicę w. Tablicę tworzymy pisząc new Array() tablica pusta, lub new Array(rozmiar) tablica o początkowo ustawionym rozmiarze. Tablice w JS są dynamiczne, czyli nie mają z góry określonego rozmiaru. Elementy dodajemy na koniec tablicy za pomocą instrukcji push(). Operacje na tablicach są następujące: new Array(6) utworzenie tablicy o sześciu elementach; a[3] czwarty element tablicy a; a.length rozmiar tablicy a; a.push( cd ) dodanie cd na koniec tablicy a; a.pop() usunięcie elementu z końca tablicy a i jego zwrócenie; a.indexof( ab ) szukanie elementu ab w tablicy a; a.splice(2,5) usunięcie pięciu elementów począwszy od trzeciego elementu z tablicy a; Zadania do samodzielnego wykonania 1. Wszystkie zmienne w powyższych funkcjach są globalne. Popraw to. 2. Jak działa wybieranie k-tego kwadratu? 3.11 DYNAMICZNE NADAWANIE ELEMENTOM WŁAŚCIWOŚCI Załóżmy, że chcielibyśmy mieć podświetlony wiersz i kolumnę, nad którą znajduje się wskaźnik myszy. Można to zrobić ustawiając odpowiednim elementom wartość background-color na zielony. Ale jak to zrobić? Z pomocą przychodzi nam znowu biblioteka jquery. Nadaliśmy już wszystkim komórkom klasę.field. Teraz wystarczy, aby po znalezieniu się wskaźnika myszy nad jakimś elementem klasy field została podświetlona odpowiednia kolumna i odpowiedni wiersz. W tym celu należy przygotować funkcję podswietl(element), która podświetla wiersz, kolumnę i kwadrat w którym znajduje się element. Zakładając, że mamy już przygotowane funkcje podswietl i wygas, wystarczy dołączyć ich obsługę do $(document).ready. Popatrzmy na nowy fragment programu. function podswietltablice(t) for(i = 0; i < 9; i++) $( #td +t[i]).css( background-color, green ); function podswietl(i) podswietltablice(wiersz(i % 10)); podswietltablice(kolumna(math.floor(i/10))); podswietltablice(kwadrat(1 + Math.floor((i-10)/30) + 3 * Math.floor(((i % 10)-1)/3)));
17 < 16 > Informatyka + function wygas() $(.field ).css( background-color, transparent ); $(document).ready(function() $( #plansza ).html(plansza(opisplanszy)); rysujkrawedzie(); $(.field ).mouseover(function() podswietl($(this).attr( id ).substr(2,2)); ); $(.field ).mouseout(function() wygas(); ); ) Jak to działa? 1. Podświetlanie jest zrealizowane poprzez ustawianie odpowiedniej właściwości css. 2. Funkcje mouseover i mouseout są wykonywane w momencie najechania wskaźnika myszy na element tablicy i zjechania z niego. 3. $(this) zwraca element w kontekście którego jest wykonywana funkcja (w naszym przypadku najechał lub zjechał z niego wskaźnik myszy). 4. Bez funkcji wygas tablica po pewnym czasie cała stałaby się zielona. 5. Kolor tła transparent oznacza brak koloru, czyli pole jest przeźroczyste. Zadania do samodzielnego wykonania 1. Niech kolumny i wiersze będą podświetlone innym kolorem niż kwadraty. 2. Program działałby bardziej intuicyjnie, gdyby podświetlane były te pola, które odnoszą się do wybranego elementu (mającego focus), a nie tego, nad którym jest wskaźnik myszy. Odpowiednie zdarzenia (zamiast mouseover i mouseout) nazywają się focus i blur REAGOWANIE NA AKCJE UŻYTKOWNIKA Pozostało nam jeszcze sprawdzenie, czy Sudoku jest poprawnie rozwiązane. Rozwiązanie poprawne to takie, w którym w każdym wierszu, kolumnie i kwadracie jest dziewięć różnych liczb. Musimy jeszcze ustalić, w którym momencie powinniśmy sprawdzać rozwiązanie. Dodamy w tym celu do naszej strony link sprawdz, a jego zdarzenie click (czyli moment w którym na niego klikamy) podepniemy do funkcji, która sprawdza poprawność rozwiązania: function poprawnatablica(t) var o = var result = true; for(i = 0; i < 9; i++) var v = $( #i + t[i]).val(); if (!(v >= 1 && v <= 9 )) return false; if (o.indexof(v)!= -1) result = false; o += v; return result; function poprawnerozwiazanie()
18 > Do czego można wykorzystać język JavaScript < 17 > $( #debug ).html( ); var i; for(i = 1; i <= 9; i++) if (!poprawnatablica(wiersz(i))) return false; if (!poprawnatablica(kolumna(i))) return false; if (!poprawnatablica(kwadrat(i))) return false; return true; $(document).ready(function() $( #plansza ).html(plansza(opisplanszy)); rysujkrawedzie(); $(.field input ).focus(function() podswietl($(this).parent().attr( id ).su bstr(2,2)); ); $(.field input ).blur(function() wygas(); ); $( #sprawdz ).click(function(event) if (poprawnerozwiazanie()) alert( Dobrze ); else alert( Niedobrze ); ); ) </script> </head> <body> <div id= plansza >Miejsce na planszę</div> <a href= # id= sprawdz >Sprawdz</a> </body> </html> Tak przygotowany program powinien sprawdzać poprawność rozwiązania. Zadania do samodzielnego rozwiązania 1. Spowoduj, aby program wypisywał, gdzie i dlaczego jest błąd w rozwiązaniu POMYSŁY NA DALSZE ROZSZERZENIA Program można w tym momencie rozszerzać w wielu kierunkach. Wymienimy klika z nich: 1. To Sudoku nie wygląda ładnie. Popracuj nad jego wyglądem. 2. Przydatny byłby licznik czasu, najlepiej taki, który udostępniałby funkcję STOP (pauza). 3. Ciekawy byłby portal, na którym byłoby wiele Sudoku do rozwiązania. LITERATURA 1. Crockford D., JavaScript mocne strony, Helion, Gliwice Powers S., JavaScript. Wprowadzenie, Helion, Gliwice 2007
19 < 18 > Informatyka + DODATEK. LISTING PROGRAMU Oto pełny listing programu, który pisaliśmy: <html> <head> <meta http-equiv= Content-Type content= text/html; charset=utf-8 /> <title>sudoku</title> <script type= text/javascript src= jquery.js ></script> <script type= text/javascript > var opisplanszy = ; function wspolrzedne(i) if (i < 0 i > 80) alert( wspolrzedne: zle dane ); return Math.floor(i/9) + 10 * (i % 9) + 11; function Plansza(opis) var i; plansza = <table> ; for(i = 0; i < opis.length; i++) if (i % 9 == 0) plansza += <tr> ; plansza += <td class= field id= td + wspolrzedne(i) + > ; if (opis[i] == 0 ) plansza += <input type= text size= 1 maxlength= 1 id= i + wspolrzedne(i) + > ; else plansza += <input type= text size= 1 maxlength= 1 readonly= id= i + wspolrzedne(i) + value= +opis[i]+ > ; plansza += </td> ; if (i % 9 == 8) plansza += </tr> ; return plansza+ </table> ; ; function rysujkrawedzie() var i; for(i = 0; i < 81; i++)
20 > Do czego można wykorzystać język JavaScript < 19 > if ((i + 1) % 3 == 0) $( #td +wspolrzedne(i)).css( border-right, 3px solid ); if (i % 9 == 0) $( #td +wspolrzedne(i)).css( border-left, 3px solid ); if (Math.floor(i / 9) % 3 == 0) $( #td +wspolrzedne(i)).css( border-top, 3px solid ); if (i > 71) $( #td +wspolrzedne(i)).css( border-bottom, 3px solid ); function wiersz(i) if (i < 1 i > 9) alert( wiersz: Zły wiersz ); w = new Array(); for(k = 10; k <= 90; k+=10) w.push(k+i); return w; function kolumna(i) if (i < 1 i > 9) alert( kolumna: Zły argument ); w = new Array(); for(k = 1; k <= 9; k++) w.push(i*10 + k); return w; function kwadrat(i) if (i < 1 i > 9) alert( kwadrat: Zły argument ); w = new Array(); x = ((i - 1) % 3) * 3 + 1; y = (Math.floor((i - 1) / 3)) * 3 + 1; for(dx = 0; dx <= 2; dx++) for(dy = 0; dy <= 2; dy++) w.push((x + dx) * 10 + dy + y); return w; function podswietltablice(t) for(i = 0; i < 9; i++) $( #td +t[i]).css( background-color, green ); function podswietl(i) podswietltablice(wiersz(i % 10)); podswietltablice(kolumna(math.floor(i/10)));
21 < 20 > Informatyka + podswietltablice(kwadrat(1 + Math.floor((i-10)/30) + 3 * Math.floor(((i % 10)-1)/3))); function wygas() $(.field ).css( background-color, transparent ); function poprawnatablica(t) var o = var result = true; for(i = 0; i < 9; i++) var v = $( #i + t[i]).val(); if (!(v >= 1 && v <= 9 )) return false; if (o.indexof(v)!= -1) result = false; o += v; return result; function poprawnerozwiazanie() $( #debug ).html( ); var i; for(i = 1; i <= 9; i++) if (!poprawnatablica(wiersz(i))) return false; if (!poprawnatablica(kolumna(i))) return false; if (!poprawnatablica(kwadrat(i))) return false; return true; $(document).ready(function() $( #plansza ).html(plansza(opisplanszy)); rysujkrawedzie(); $(.field input ).focus(function() podswietl($(this).parent().attr( id ).su bstr(2,2)); ); $(.field input ).blur(function() wygas(); ); $( #sprawdz ).click(function(event) if (poprawnerozwiazanie()) alert( Dobrze ); else alert( Niedobrze ); ); ) </script>
22 > Do czego można wykorzystać język JavaScript < 21 > </head> <body> <div id= plansza >Miejsce na planszę</div> <a href= # id= sprawdz >Sprawdz</a> </body> </html>
23 < 22 > Notatki Informatyka +
24 Notatki < 23 >
25 W projekcie Informatyka +, poza wykładami i warsztatami, przewidziano następujące działania: 24-godzinne kursy dla uczniów w ramach modułów tematycznych 24-godzinne kursy metodyczne dla nauczycieli, przygotowujące do pracy z uczniem zdolnym nagrania 60 wykładów informatycznych, prowadzonych przez wybitnych specjalistów i nauczycieli akademickich konkursy dla uczniów, trzy w ciągu roku udział uczniów w pracach kół naukowych udział uczniów w konferencjach naukowych obozy wypoczynkowo-naukowe. Szczegółowe informacje znajdują się na stronie projektu
Ten skrypt powinien zająć 2-3 zajęcia. Trzeba go oddać na trzecim labie.
Ten skrypt powinien zająć 2-3 zajęcia. Trzeba go oddać na trzecim labie. Zakładam, że wszyscy wiedzą na czym polega sudoku. Jeśli ktoś jednak nie wie, to http:// en.wikipedia.org/wiki/sudoku (wariant podstawowy).
Cw.12 JAVAScript w dokumentach HTML
Cw.12 JAVAScript w dokumentach HTML Wstawienie skryptu do dokumentu HTML JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.skrypty Java- Script mogą być zagnieżdżane
Funkcje i instrukcje języka JavaScript
Funkcje i instrukcje języka JavaScript 1. Cele lekcji a) Wiadomości Uczeń : zna operatory i typy danych języka JavaScript, zna konstrukcję definicji funkcji, zna pętlę If i For, Do i While oraz podaje
SUM Edukacja Techniczno Informatyczna Języki i Systemy Programowania. Wykład 3. dr Artur Bartoszewski - WYKŁAD: Języki i Systemy Programowania,
SUM Edukacja Techniczno Informatyczna Języki i Systemy Programowania Wykład 3 1 SUM Edukacja Techniczno Informatyczna Języki i Systemy Programowania Przykład Bingo 2 Treść przykładu Jak wygląda karta do
Masz pomysł na lepszy wygląd?
Właśnie zrobiłem świetne narzędzie dla ludzi z wyobraźnią i wyczuciem smaku :) No właśnie mogę się pochwalić nowym narzędziem, jakie zrobiłem w panelu (do tego są potrzebne uprawnienia, jak ktoś zna się
JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.
IŚ ćw.8 JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania. Skrypty JavaScript są zagnieżdżane w dokumentach HTML. Skrypt JavaScript
Programowanie w języku Python. Grażyna Koba
Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i
JAVAScript w dokumentach HTML (2)
Informatyka ćw.6 JAVAScript w dokumentach HTML (2) Interakcyjne wprowadzanie danych Jednym ze sposobów jest stosowanie metody prompt dla wbudowanego obiektu window: zmienna= prompt("tekst zachęty, np.
Laboratorium 1: Szablon strony w HTML5
Laboratorium 1: Szablon strony w HTML5 Czas realizacji: 2 godziny Kurs: WYK01_HTML.pdf, WYK02_CSS.pdf Pliki:, Edytor: http://www.sublimetext.com/ stabilna wersja 2 (portable) Ćwiczenie 1. Szablon strony
Zajęcia 4 - Wprowadzenie do Javascript
Zajęcia 4 - Wprowadzenie do Javascript Co to jest Javascript Javascript jest językiem skryptowym pozwalającym na dołączanie dodatkowej funkcjonalności do stron WWW. Jest ona najczęściej związana z modyfikacją
Zadanie Wstaw wykres i dokonaj jego edycji dla poniższych danych. 8a 3,54 8b 5,25 8c 4,21 8d 4,85
Zadanie Wstaw wykres i dokonaj jego edycji dla poniższych danych Klasa Średnia 8a 3,54 8b 5,25 8c 4,21 8d 4,85 Do wstawienia wykresu w edytorze tekstu nie potrzebujemy mieć wykonanej tabeli jest ona tylko
Wykład 03 JavaScript. Michał Drabik
Wykład 03 JavaScript Michał Drabik Język programowania wykorzystywany na stronach internetowych głównie w celu umożliwienia interakcji z użytkownikiem. Kod JavaScript może być umieszczany w kodzie XHTML
Pętle. Dodał Administrator niedziela, 14 marzec :27
Pętlami nazywamy konstrukcje języka, które pozwalają na wielokrotne wykonywanie powtarzających się instrukcji. Przykładowo, jeśli trzeba 10 razy wyświetlić na ekranie pewien napis, to można wykorzystać
JAVAScript w dokumentach HTML (1)
JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania. Skrypty JavaScript mogą być zagnieżdżane w dokumentach HTML. Instrukcje JavaScript
HTML (HyperText Markup Language) hipertekstowy język znaczników
HTML (HyperText Markup Language) hipertekstowy język znaczników Struktura dokumentu tytuł strony
Aplikacje WWW - laboratorium
Aplikacje WWW - laboratorium Język JavaScript Celem ćwiczenia jest przygotowanie formularza HTML z wykorzystaniem języka JavaScript. Formularz ten będzie sprawdzany pod względem zawartości przed wysłaniem
Podstawy technologii WWW
Podstawy technologii WWW Ćwiczenie 8 PHP, czyli poczatki nowej, dynamicznej znajomosci Na dzisiejszych zajęciach rozpoczniemy programowanie po stronie serwera w języku PHP. Po otrzymaniu żądania serwer
Rys.2.1. Drzewo modelu DOM [1]
1. CEL ĆWICZENIA Celem ćwiczenia jest przedstawienie możliwości wykorzystania języka JavaScript do tworzenia interaktywnych aplikacji działających po stronie klienta. 2. MATERIAŁ NAUCZANIA 2.1. DOM model
Zdarzenia Zdarzenia onload i onunload
Zdarzenia Zdarzenia onload i onunload Ćwiczenie 1. Rysunek 1. Okno powitalne wykorzystujące zdarzenie onload Na stronie mogą zachodzić różne zdarzenia, np. użytkownik kliknie myszą lub zacznie wprowadzać
CSS - layout strony internetowej
www.math.uni.lodz.pl/ radmat Ćwiczenie 1 Proszę przy pomocy listy stworzyć menu pionowe o następujących własnościach: Ćwiczenie 1 Proszę przy pomocy listy stworzyć menu pionowe o następujących własnościach:
Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych
1. Wstawianie skryptu na stroną: Laboratorium 1 Do umieszczenia skryptów na stronie służy znacznik: //dla HTML5 ...instrukcje skryptu //dla HTML4 ...instrukcje
Danuta ROZPŁOCH-NOWAKOWSKA Strona 1 2007-11-06. Moduł 4. Przykład 1. Przykład 2. HTML 4.01 Transitional).
Danuta ROZPŁOCH-NOWAKOWSKA Strona 1 2007-11-06 Moduł 4. Style Zajęcia poświęcone będą kaskadowym arkuszom stylów (por. slajdy 18.-27. z wykładu 2.) Wiele uwagi poświęcaliśmy do tej pory planowaniu szkieletu
JQuery. $('#pierwszy').css('color','red').hide('slow').show(3000); $(document).ready(function() { //... tutaj nasze skrypty jquery //...
JQuery jquery (jquery.com) to jedna z najbardziej popularnych bibliotek/frameworków do javascript. Jej popularność oczywiście znikąd się nie bierze. Dzięki tej bibliotece jesteśmy w stanie o wiele szybciej
Nowy szablon stron pracowników ZUT
Nowy szablon stron pracowników ZUT Uczelniane Centrum Informatyki ZUT przygotowało nowy szablon stron pracowników, zunifikowany z obecnymi stronami ZUT. Serdecznie zachęcamy Państwa do migracji na nowy
Innowacja pedagogiczna Pasja programowania ZESPÓŁ SZKÓŁ W CHOROSZCZY
Innowacja pedagogiczna Pasja programowania ZESPÓŁ SZKÓŁ W CHOROSZCZY 1. Informacje o innowacji Nazwa szkoły: Zespół Szkół w Choroszczy Etap edukacyjny: Szkoła Podstawowa, klasy 4-6 Tytuł innowacji: Pasja
Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.
Część XIX C++ w Każda poznana do tej pory zmienna może przechowywać jedną liczbę. Jeśli zaczniemy pisać bardziej rozbudowane programy, okaże się to niewystarczające. Warto więc poznać zmienne, które mogą
1. Dockbar, CMS + wyszukiwarka aplikacji Dodawanie portletów Widok zawartości stron... 3
DODAJEMY TREŚĆ DO STRONY 1. Dockbar, CMS + wyszukiwarka aplikacji... 2 2. Dodawanie portletów... 3 Widok zawartości stron... 3 Omówienie zawartości portletu (usunięcie ramki itd.)... 4 3. Ikonki wybierz
Young Programmer: HTML+PHP. Dr inż. Małgorzata Janik, Zajęcia #2
Young Programmer: HTML+PHP Dr inż. Małgorzata Janik, Zajęcia #2 Ramowy program warsztatów Zajęcia 1: Zajęcia wprowadzające, HTML Zajęcia 2: Style CSS (tabele i kaskadowe arkusze stylów) Zajęcia 3: Podstawy
Oczywiście występują także znaczniki, bez ich odpowiednika kończącego, np. <BR>
Język html to język znaczników inaczej tagów, czyli słów lub skrótów pochodzących z języka angielskiego ujętych w nawiasy ostrokątne , np.. . W większości przypadków spotykamy znaczniki początku (inaczej
Informatyka II. Laboratorium Aplikacja okienkowa
Informatyka II Laboratorium Aplikacja okienkowa Założenia Program będzie obliczał obwód oraz pole trójkąta na podstawie podanych zmiennych. Użytkownik będzie poproszony o podanie długości boków trójkąta.
JAVAScript w dokumentach HTML - przypomnienie
Programowanie obiektowe ćw.1 JAVAScript w dokumentach HTML - przypomnienie JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania. Skrypty JavaScript są zagnieżdżane w
Aplikacje WWW - laboratorium
Aplikacje WWW - laboratorium Język JavaScript Celem ćwiczenia jest przygotowanie formularza na stronie WWW z wykorzystaniem języka JavaScript. Formularz ten będzie sprawdzany pod względem zawartości przed
DOM (Document Object Model)
DOM (Document Object Model) Czym jest DOM? Platforma, która pozwala skryptom na dynamiczny dostęp do zawartości strony i jej aktualizację. Elementy można dodawać, zmieniać lub usuwać. Specyfikacje Poziomy
SterBox. Przygotowanie Strony Użytkownika
Przygotowanie Strony Użytkownika Sterbox od wersji 2.1.1 obsługuje dwie strony użytkownika umożliwiające sterowanie z kontrolą stanów. Rozpoczynając tworzenie strony potrzebujemy programu do tworzenia
ABC języka HTML i XHTML / Maria Sokół. wyd. 2. Gliwice, cop Spis treści
ABC języka HTML i XHTML / Maria Sokół. wyd. 2. Gliwice, cop. 2012 Spis treści Wstęp 9 1 HTML 5 i XHTML w pytaniach i odpowiedziach 13 Co to jest HTML 5? 13 Co to jest XHTML? 15 Czy strony utworzone w HTML
2.1. Duszek w labiryncie
https://app.wsipnet.pl/podreczniki/strona/38741 2.1. Duszek w labiryncie DOWIESZ SIĘ, JAK sterować duszkiem, stosować pętlę zawsze, wykorzystywać blok warunkowy jeżeli. Sterowanie żółwiem, duszkiem lub
LIVE Gra w życie. LIVE w JavaScript krok po kroku. ANIMACJA Rozpoczynamy od podstawowego schematu stosowanego w animacji
LIVE Gra w życie Live jest jednym z pierwszych i najbardziej znanych tzw. automatów komórkowych. Został wymyślony w 1970 roku przez brytyjskiego matematyka Johna Conwaya. Co to takiego automat komórkowy?
Widżety KIWIPortal. tworzenie umieszczanie na stronach internetowych opcje zaawansowane. Autor: Damian Rebuś Data: 29.06.2015 Wersja: 1.
Widżety KIWIPortal tworzenie umieszczanie na stronach internetowych opcje zaawansowane Autor: Damian Rebuś Data: 29.06.2015 Wersja: 1.3 Strona 1 z 17 1 SPIS TREŚCI 2 Metody osadzania widżetów... 3 2.1
I. Formatowanie tekstu i wygląd strony
I. Formatowanie tekstu i wygląd strony Akapit: ... aby wyrównać tekst do lewego marginesu aby wyrównać tekst do prawego marginesu:
lekcja 8a Gry komputerowe MasterMind
lekcja 8a Gry komputerowe MasterMind Posiadamy już elementarną wiedzę w zakresie programowania. Pora więc zabrać się za rozwiązywanie problemów bardziej złożonych, które wymagają zastosowania typowych
Instalacja systemu zarządzania treścią (CMS): Joomla
Instalacja systemu zarządzania treścią (CMS): Joomla Na stronie http://www.cba.pl/ zarejestruj nowe konto klikając na przycisk:, następnie wybierz nazwę domeny (Rys. 1a) oraz wypełnij obowiązkowe pola
Zadanie 1. Stosowanie stylów
Zadanie 1. Stosowanie stylów Styl to zestaw elementów formatowania określających wygląd: tekstu atrybuty czcionki (tzw. styl znaku), akapitów np. wyrównanie tekstu, odstępy między wierszami, wcięcia, a
Przekształcenie danych przestrzennych w interaktywne mapy dostępne na stronach www (WARSZTATY, poziom zaawansowany)
Wrocławski Instytut Zastosowań Informacji Przestrzennej i Sztucznej Inteligencji Przekształcenie danych przestrzennych w interaktywne mapy dostępne na stronach www (WARSZTATY, poziom zaawansowany) Szkolenia
edycja szablonu za pomocą serwisu allegro.pl
edycja szablonu za pomocą serwisu allegro.pl 2 Do obsługi Twojego szablonu nie jest wymagane żadne dodatkowe oprogramowanie - jedyne czego potrzebujesz to aktywne konto w serwisie allegro.pl. Dokładne
EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE Rok 2016 CZĘŚĆ PRAKTYCZNA
Arkusz zawiera informacje prawnie Układ graficzny CKE 2016 chronione do momentu rozpoczęcia egzaminu CENTRALNA KOMISJA EGZAMINACYJNA Nazwa kwalifikacji: Twmzenie aplikacji internetowych i baz danych oraz
BIBLIOTEKA LOKALNE CENTRUM WIEDZY PRAKTYCZNEJ PRZEWODNIK PO NARZĘDZIACH WARSZTAT NR 1: ARKUSZE KALKULACYJNE - MINI SKRYPT
BIBLIOTEKA LOKALNE CENTRUM WIEDZY PRAKTYCZNEJ PRZEWODNIK PO NARZĘDZIACH WARSZTAT NR 1: ARKUSZE KALKULACYJNE - MINI SKRYPT 1. Wprowadzenie Arkusze kalkulacyjne Google umożliwiają łatwe tworzenie, udostępnianie
TECHNOLOGIE INTERNETOWE WYKŁAD 6. JavaScript Funkcje i obiekty
1. Co to jest funkcja? Funkcja jest oddzielnym blokiem kodu, który może być wielokrotnie wykonywany w danym programie, poprzez jej wielokrotne wywoływanie. Do funkcji przekazujemy przeważnie jakieś argumenty,
4. Funkcje. Przykłady
4. Funkcje Przykłady 4.1. Napisz funkcję kwadrat, która przyjmuje jeden argument: długość boku kwadratu i zwraca pole jego powierzchni. Używając tej funkcji napisz program, który obliczy pole powierzchni
Pomorski Czarodziej 2016 Zadania. Kategoria C
Pomorski Czarodziej 2016 Zadania. Kategoria C Poniżej znajduje się 5 zadań. Za poprawne rozwiązanie każdego z nich możesz otrzymać 10 punktów. Jeżeli otrzymasz za zadanie maksymalną liczbę punktów, możesz
Nazwa implementacji: Nauka języka Python wyrażenia warunkowe. Autor: Piotr Fiorek. Opis implementacji: Poznanie wyrażeń warunkowych if elif - else.
Nazwa implementacji: Nauka języka Python wyrażenia warunkowe Autor: Piotr Fiorek Opis implementacji: Poznanie wyrażeń warunkowych if elif - else. Nasz kalkulator umie już liczyć, ale potrafi przeprowadzać
1. 2. Dobór formy do treści dokumentu w edytorze tekstu MS Word
1. 2. Dobór formy do treści dokumentu w edytorze tekstu MS Word a. 1. Cele lekcji i. a) Wiadomości 1. Uczeń potrafi wyjaśnić pojęcia: nagłówek, stopka, przypis. 2. Uczeń potrafi wymienić dwie zasadnicze
Ćwiczenie 1 Galeria zdjęć
Galeria zdjęć Pobierz przykład (http://jsekulska.kis.p.lodz.pl/studia.htm). Krok 1 Ustawienie stołu montażowego Otwieramy nowy plik i nazywamy go (np. gallery.fla). Ustawiamy wielkość pola roboczego na
I. Wstawianie rysunków
I. Wstawianie rysunków Wstawiane rysunku Bez parametrów: Tekst alternatywny Tytuł obrazka
przedmiot kilka razy, wystarczy kliknąć przycisk Wyczaruj ostatni,
Baltie Zadanie 1. Budowanie W trybie Budowanie wybuduj domek jak na rysunku. Przedmioty do wybudowania domku weź z banku 0. Zadanie 2. Czarowanie sterowanie i powtarzanie W trybie Czarowanie z pomocą czarodzieja
www.fwrl.pl/szkolenie
STRONA www.fwrl.pl/szkolenie MS WORD HTML HTML i dostarczają informację dla silnika przeglądarki o tym jak ma być zbudowana i wyświetlona strona HTML HTML HTML (warstwa logiczna co i gdzie ma być) (wastwa
Przeszłość i przyszłość informatyki
Przeszłość i przyszłość informatyki Rodzaj zajęć: Wszechnica Popołudniowa Tytuł: Przeszłość i przyszłość informatyki Autor: prof. dr hab. Maciej M Sysło Redaktor merytoryczny: prof. dr hab. Maciej M Sysło
Cel: Przypisujemy przyciskom określone funkcje panel górny (Panel1)
W odcinku III tworzyliśmy paski narzędzi. Umieszczaliśmy na panelach ikony, reprezentujące czynności (charakterystyczne dla edytorów tekstu). Musimy teraz przypisać każdemu przyciskowi jego czynność (wycinanie,
Dzięki arkuszom zewnętrznym uzyskujemy centralne sterowanie wyglądem serwisu. Zewnętrzny arkusz stylów to plik tekstowy z rozszerzeniem css.
Kaskadowe arkusze stylów CSS Geneza - oddzielenie struktury dokumentu HTML od reguł prezentacji - poszerzenie samego HTML Korzyści - przejrzystość dokumentów - łatwe zarządzanie stylem (wyglądem) serwisu
KURSY PROGRAMOWANIA DLA DZIECI
KURSY PROGRAMOWANIA DLA DZIECI NAZWA KURSU: Python w Minecrafcie oraz strony internetowe. GRUPA DOCELOWA: Szkoła Podstawowa klasy 4-6 (10-13 lat). OPIS KURSU: Zajęcia dla uczniów, którzy ukończyli kurs
Tekst na mapach. Teksty na mapie. Ustawienia mapy. W tej instrukcji zostanie opisany sposób w jaki można na mapach wyświetlać teksty
Teksty na mapie W tej instrukcji zostanie opisany sposób w jaki można na mapach wyświetlać teksty Dane z programu Agrinavia Field Na mapach utworzonych w Agrinavia Map możemy wyświetlać informacje z programu
KURSY PROGRAMOWANIA DLA DZIECI
KURSY PROGRAMOWANIA DLA DZIECI NAZWA KURSU: Python w Minecrafcie oraz strony internetowe. GRUPA DOCELOWA: Szkoła Podstawowa klasy 4-6 (10-12 lat). OPIS KURSU: Zajęcia dla uczniów, którzy ukończyli kurs
EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE Rok 2016 CZĘŚĆ PRAKTYCZNA
Arkusz zawiera informacje prawnie Układ graficzny CKE 2016 chronione do momentu rozpoczęcia egzaminu CENTRALNA KOMISJA EGZAMINACYJNA Nazwa kwalifikacji: Twmzenie aplikacji internetowych i baz danych oraz
1 Podstawy c++ w pigułce.
1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,
Box model: Content. Content - obszar zawartości określany jest za pomocą deklaracji wysokości i szerokości.
Box model Box model: Content Content - obszar zawartości określany jest za pomocą deklaracji wysokości i szerokości. Box model: Padding Content Content - obszar zawartości określany jest za pomocą deklaracji
dokumentacja Edytor Bazy Zmiennych Edytor Bazy Zmiennych Podręcznik użytkownika
asix 4 Edytor Bazy Zmiennych Podręcznik użytkownika asix 4 dokumentacja Edytor Bazy Zmiennych ASKOM i asix to zastrzeżone znaki firmy ASKOM Sp. z o. o., Gliwice. Inne występujące w tekście znaki firmowe
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 1. Wprowadzenie do aplikacji internetowych
AUDYT DOSTĘPNOŚCI STRONY INTERNETOWEJ
Poznań, 2012-10-04 AUDYT DOSTĘPNOŚCI STRONY INTERNETOWEJ NAZWA ADRES STRONY ILOŚĆ BŁĘDÓW WCAG 33 ILOŚĆ OSTRZEŻEŃ WCAG 3 TYP DOKUMENTU UŻYTY FORMAT (X)HTML JĘZYK OWANIE STRONY Urząd Marszałkowski Województwa
DOKUMENTY I GRAFIKI. Zarządzanie zawartością Tworzenie folderu Dodawanie dokumentu / grafiki Wersje plików... 7
DOKUMENTY I GRAFIKI SPIS TREŚCI Zarządzanie zawartością... 2 Tworzenie folderu... 3 Dodawanie dokumentu / grafiki... 4 Wersje plików... 7 Zmiana uprawnień w plikach... 9 Link do dokumentów i dodawanie
Tworzenie Stron Internetowych. odcinek 10
Tworzenie Stron Internetowych odcinek 10 JavaScript JavaScript (ECMAScript) skryptowy język programowania powszechnie używany w Internecie. Skrypty JS dodają do stron www interaktywność i funkcjonalności,
Od programowania wizualnego do tekstowego
Od programowania wizualnego do tekstowego Krzysztof Chechłacz Nowa podstawa programowa z informatyki w świetle reformy oświaty - Konferencja w ramach XII edycji Akademii Technologii Informacyjnej i Komunikacyjnej
Być może jesteś doświadczonym programistą, biegle programujesz w Javie,
Kompendium PHP 01 Być może jesteś doświadczonym programistą, biegle programujesz w Javie, C++, Pythonie lub jakimś innym języku programowania, których jak myślę, powstało już tyle, że chyba nie ma osoby,
plansoft.org Zmiany w Plansoft.org
Zmiany w Plansoft.org Mapy Google... 1 Tworzenie mapy... 2 Wprowadzanie szerokości i długości geograficznej... 2 Tworzenie mapy... 2 Dostosowanie wyglądu mapy... 3 Ograniczanie liczby zasobów do wyświetlenia
I. Spis treści I. Spis treści... 2 II. Kreator szablonów... 3 1. Tworzenie szablonu... 3 2. Menu... 4 a. Opis ikon... 5 3. Dodanie nowego elementu...
Kreator szablonów I. Spis treści I. Spis treści... 2 II. Kreator szablonów... 3 1. Tworzenie szablonu... 3 2. Menu... 4 a. Opis ikon... 5 3. Dodanie nowego elementu... 7 a. Grafika... 7 b. Tekst... 7 c.
Zakres treści Czas. 2 Określenie charakteru i tematyki strony. Rodzaje witryn. Projekt graficzny witryny. Opracowanie skryptów
Aplikacje internetowe KL. III Rok szkolny: 011/01 Nr programu: 31[01]/T,SP/MENIS/004.06.14 Okres kształcenia: łącznie ok. 180 godz. lekcyjne Wojciech Borzyszkowski Zenon Kreft Moduł Bok wprowadzający Podstawy
Zajęcia nr 15 JavaScript wprowadzenie do JavaScript
Zajęcia nr 15 JavaScript wprowadzenie do JavaScript Prowadzący: Andrzej Gąsienica-Samek, strona kółka www.atinea.pl/kolko Wprowadzenie do jsfiddle.net Uruchom Chrome i wejdź na stronę http://jsfiddle.net.
Metody numeryczne Laboratorium 2
Metody numeryczne Laboratorium 2 1. Tworzenie i uruchamianie skryptów Środowisko MATLAB/GNU Octave daje nam możliwość tworzenia skryptów czyli zapisywania grup poleceń czy funkcji w osobnym pliku i uruchamiania
Zakładanie konta w serwisie
Zakładanie konta w serwisie Uruchomienie strony w pasku adresowym przeglądarki Firefox wpisujemy: Najważniejsze warunki usługi można stworzyć dowolną ilość kont; konto jest usuwane jeśli od ostatniego
Jak zainstalować szablon allegro?
Jak zainstalować szablon allegro? W mailu z zakupionym szablonem otrzymali państwo plik zip z numerem szablonu w nazwie. Należy najpierw go rozpakować. W paczce znajduję się pliki: 1. index[nrszablonu].txt
Zapisywanie algorytmów w języku programowania
Temat C5 Zapisywanie algorytmów w języku programowania Cele edukacyjne Zrozumienie, na czym polega programowanie. Poznanie sposobu zapisu algorytmu w postaci programu komputerowego. Zrozumienie, na czym
Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie
Część X C++ Typ znakowy służy do reprezentacji pojedynczych znaków ASCII, czyli liter, cyfr, znaków przestankowych i innych specjalnych znaków widocznych na naszej klawiaturze (oraz wielu innych, których
Ćwiczenie: JavaScript Cookies (3x45 minut)
Ćwiczenie: JavaScript Cookies (3x45 minut) Cookies niewielkie porcje danych tekstowych, które mogą być przesyłane między serwerem a przeglądarką. Przeglądarka przechowuje te dane przez określony czas.
DODAJEMY TREŚĆ DO STRONY
DODAJEMY TREŚĆ DO STRONY SPIS TREŚCI Pasek narzędzi i wyszukiwarka aplikacji... 2 Dodawanie portletów... 3 Widok zawartości stron... 4 Zawartość portletu... 5 Ikonki wybierz oraz dodaj zawartość stron...
znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.
Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo
[WYSYŁANIE MAILI Z PROGRAMU EXCEL]
c 20140612- rev. 2 [WYSYŁANIE MAILI Z PROGRAMU EXCEL] ZAWARTOŚĆ Wstęp... 3 Funkcje w excelu... 4 Funkcja Hiperłącza... 7 Dodawanie odbiorców... 8 Uzupełnianie tytułu... 8 Wpisywanie treści... 8 Znane problemy...
1. Umieść kursor w miejscu, w którym ma być wprowadzony ozdobny napis. 2. Na karcie Wstawianie w grupie Tekst kliknij przycisk WordArt.
Grafika w dokumencie Wprowadzanie ozdobnych napisów WordArt Do tworzenia efektownych, ozdobnych napisów służy obiekt WordArt. Aby wstawić do dokumentu obiekt WordArt: 1. Umieść kursor w miejscu, w którym
za pomocą: definiujemy:
HTML CSS za pomocą: języka HTML arkusza CSS definiujemy: szkielet strony wygląd strony Struktura dokumentu html - znaczniki Znaczniki wyznaczają rodzaj zawartości. element strony
Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?
Część XVIII C++ Funkcje Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Umiemy już podzielić nasz
Podstawowa instrukcja obsługi STRON stron internetowych serwisu www.smpn.pl zrealizowanych w systemie zarządzania treścią Wordpress.
Podstawowa instrukcja obsługi STRON stron internetowych serwisu www.smpn.pl zrealizowanych w systemie zarządzania treścią Wordpress. Założenia użytkownik posiada założone konto w systemie z prawami Redaktora.
Rys.2.1. Trzy warstwy stanowiące podstawę popularnego podejścia w zakresie budowy stron internetowych [2]
1. CEL ĆWICZENIA Celem ćwiczenia jest przedstawienie możliwości wykorzystania języka JavaScript do tworzenia interaktywnych aplikacji działających po stronie klienta. 2. MATERIAŁ NAUCZANIA JavaScript tak
Tabele. Przykład 15a.htm. <HTML><HEAD><TITLE> Cennik</TITLE></HEAD><BODY><H3>Cennik</H3> <TABLE BORDER="1"> <TR>
Tabele Autorem niniejszego skryptu jest dr inż. Robert Kolud Tabele w HTML to nie tylko praktyczny sposób na przedstawianie zestawień informacji. Znacznie częściej jednak tabele są wygodnym narzędziem
Tworzenie prezentacji w MS PowerPoint
Tworzenie prezentacji w MS PowerPoint Program PowerPoint dostarczany jest w pakiecie Office i daje nam możliwość stworzenia prezentacji oraz uatrakcyjnienia materiału, który chcemy przedstawić. Prezentacje
Tworzenie szablonów użytkownika
Poradnik Inżyniera Nr 40 Aktualizacja: 12/2018 Tworzenie szablonów użytkownika Program: Plik powiązany: Stratygrafia 3D - karty otworów Demo_manual_40.gsg Głównym celem niniejszego Przewodnika Inżyniera
Jak posługiwać się edytorem treści
Jak posługiwać się edytorem treści Edytor CKE jest bardzo prostym narzędziem pomagającym osobom niezaznajomionym z językiem HTML w tworzeniu interaktywnych treści stron internetowych. Razem z praktyka
Dokumentacja WebMaster ver 1.0
1 Wstęp Dokumentacja WebMaster ver 1.0 Dokumentacja ta przeznaczona jest dla webmasterów, grafików, programistów. Przedstawia ona strukturę aplikacji SOTEeSKLEP, opisuje działanie oraz wyjaśnia m.in. jak
Podstawy programowania, Poniedziałek , 8-10 Projekt, część 1
Podstawy programowania, Poniedziałek 30.05.2016, 8-10 Projekt, część 1 1. Zadanie Projekt polega na stworzeniu logicznej gry komputerowej działającej w trybie tekstowym o nazwie Minefield. 2. Cele Celem
Programowanie i techniki algorytmiczne
Temat 2. Programowanie i techniki algorytmiczne Realizacja podstawy programowej 1) wyjaśnia pojęcie algorytmu, podaje odpowiednie przykłady algorytmów rozwiązywania różnych 2) formułuje ścisły opis prostej
Podstawy programowania, Poniedziałek , 8-10 Projekt, część 3
Podstawy programowania, Poniedziałek 13.05.2015, 8-10 Projekt, część 3 1. Zadanie Projekt polega na stworzeniu logicznej gry komputerowej działającej w trybie tekstowym o nazwie Minefield. 2. Cele Celem
XML extensible Markup Language. część 5
XML extensible Markup Language część 5 XML ważne zastosowanie Jak często pracujemy z plikami XML? Wróćmy jeszcze do wykładu poprzedniego. A dokładnie do pliku zawierającego ten wykład. xml_2017_wyklad_4.pptx
Zapis algorytmów: schematy blokowe i pseudokod 1
Zapis algorytmów: schematy blokowe i pseudokod 1 Przed przystąpieniem do napisania kodu programu należy ten program najpierw zaprojektować. Projekt tworzącego go algorytmu może być zapisany w formie schematu