DOM (Document Object Model)

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

Podstawy JavaScript ćwiczenia

Wykład 03 JavaScript. Michał Drabik

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

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

Zajęcia 4 - Wprowadzenie do Javascript

Zdarzenia Zdarzenia onload i onunload

Rys.2.1. Drzewo modelu DOM [1]

Przykład integracji kalkulatora mbank RATY na platformie IAI

za pomocą: definiujemy:

Aplikacje WWW - laboratorium

Aplikacje internetowe

XML extensible Markup Language. część 5

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

Aplikacje WWW - laboratorium

Podstawy HTML i CSS. Wydział Matematyki, Informatyki i Ekonometrii Uniwersytet Zielonogórski

e r T i H M r e n L T n

Dokumentacja Skryptu Mapy ver.1.1

Kaskadowość stylów określa pierwszeństwo w oddziaływaniu na te same elementy strony różnych stylów.

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

Witryny i aplikacje internetowe

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

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

Wybrane znaczniki HTML

Dzięki arkuszom zewnętrznym uzyskujemy centralne sterowanie wyglądem serwisu. Zewnętrzny arkusz stylów to plik tekstowy z rozszerzeniem css.

WYKŁAD 5 BIBLIOTEKA JQUERY CZĘŚĆ 1

Często używanym elementem języka HTML są tabele, które wykorzystuje się do wygodnego rozmieszczania informacji i obrazów.

Specyfikacja techniczna dot. mailingów HTML

Young Programmer: HTML+PHP. Dr inż. Małgorzata Janik, Zajęcia #2

HTML (HyperText Markup Language)

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

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

plansoft.org Zmiany w Plansoft.org

Wprowadzenie do języka HTML

Zaawansowane aplikacje internetowe

LABORATORIUM 2 WSTĘP DO SIECI TELEINFORMATYCZNYCH TABELE I FORMULARZE

Tabele. Przykład 15a.htm. <HTML><HEAD><TITLE> Cennik</TITLE></HEAD><BODY><H3>Cennik</H3> <TABLE BORDER="1"> <TR>

XML extensible Markup Language. część 5

Elementarz HTML i CSS

CSS - layout strony internetowej

Funkcje i instrukcje języka JavaScript

Innowacja pedagogiczna Pasja programowania ZESPÓŁ SZKÓŁ W CHOROSZCZY

HTML DOM, XHTML cel, charakterystyka

LIVE Gra w życie. LIVE w JavaScript krok po kroku. ANIMACJA Rozpoczynamy od podstawowego schematu stosowanego w animacji

Cel ogólny lekcji: Wprowadzenie dodatkowych znaczników. Wprowadzenie odsyłacza, tabeli, listy numerowanej i wypunktowanej.

XHTML - Extensible Hypertext Markup Language, czyli Rozszerzalny Hipertekstowy Język Oznaczania.

Budowa aplikacji wielowarstwowych. Zastosowanie Kaskadowych arkuszy stylów (CSS)

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

Laboratorium 1: Szablon strony w HTML5

Krok 1: Stylizowanie plakatu

Jeśli chodzi o wymianę/dodanie zdjęcia w galerii to robimy to za pomocą komponentu Galeria Phoca.

Aplikacje internetowe laboratorium JavaScript

Hyper Text Markup Language

Krótki kurs JavaScript

CMS- kontakty (mapa)

TECHNOLOGIE INTERNETOWE WYKŁAD 6. JavaScript Funkcje i obiekty

Zawartość specyfikacji:

Tworzenie stron internetowych w kodzie HTML Cz 5

Justyna Klimczyk Nauczyciel informatyki Gimnazjum im. Władysława Stanisława Reymonta w Kleszczowie

JAVAScript w dokumentach HTML - przypomnienie

Aplikacje internetowe laboratorium JavaScript

Nazwa implementacji: CSS i box model. Autor: Opis implementacji: Poznajemy podstawy CSS oraz dowiadujemy się o rozmieszczaniu elementów na stronie.

Angular, cz. II. Tworzenie serwisów Web 2.0. dr inż. Robert Perliński

Formatowanie tekstu za pomocą zdefiniowanych stylów. Włączanie okna stylów. 1. zaznaczyć tekst, który chcemy formatować

Sierpień 2015 rozwiązanie plik: index.htlm

I. Formatowanie tekstu i wygląd strony

Ćwiczenia laboratoryjne nr 8 Podstawy języka XML.

Widżety KIWIPortal. tworzenie umieszczanie na stronach internetowych opcje zaawansowane. Autor: Damian Rebuś Data: Wersja: 1.

WYKŁAD 3 XML DOM XML DOCUMENT OBJECT MODEL CZĘŚĆ 1

How To? Konfiguracja podglądu strumienia z kamer IP ACTi

ASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3

Atrybuty znaczników HTML

Po naciśnięciu przycisku Dalej pojawi się okienko jak poniżej,

JAVAScript w dokumentach HTML (2)

Oczywiście występują także znaczniki, bez ich odpowiednika kończącego, np. <BR>

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

HTML cd. Ramki, tabelki

Zaawansowany kurs języka Python

Instrukcja obsługi funkcji specjalnych szablonu C01 v.1.0

ABC języka HTML i XHTML / Maria Sokół. wyd. 2. Gliwice, cop Spis treści

Edytor tekstu MS Word 2010 PL. Edytor tekstu MS Word 2010 PL umożliwia wstawianie i formatowanie tabel.

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

Dokumentacja imapliteapi

Języki programowania wysokiego poziomu. HTML cz.2.

AUDYT DOSTĘPNOŚCI STRONY INTERNETOWEJ

Wymagania edukacyjne

HTML. HTML(ang. HyperTextMarkupLanguage, pol. hipertekstowy język znaczników) język wykorzystywany do tworzenia stron internetowych

Instrukcja obsługi systemu zarządzania treścią w MDK

PROGRAMOWANIE. WNPiD UAM, Programowanie, inż. Piotr Jabłoński

Tworzenie Stron Internetowych. odcinek 10

Specyfikacja mailingu GG Network

Aplikacja Dodatkowe zakładki Shoper Appstore REALIZACJA

Laboratorium 6 Tworzenie bloga w Zend Framework

Technologie Informacyjne

Przedmiot: Grafika komputerowa i projektowanie stron WWW

Podstawy programowania w języku JavaScript

Ćwiczenie 9 - CSS i wstawianie CSS

LABORATORIUM 2 WSTĘP DO SIECI TELEINFORMATYCZNYCH

Specyfikacja techniczna kreacji HTML5

Aplikacje internetowe - laboratorium

Transkrypt:

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 DOM: 1.0, 2.0, 3.0. Opis: www.w3c.org Struktura Interfejs - metoda - atrybut Przykłady praktyczne /* Piąte TD */ mtd5 = document.createelement("td"); mtd5.classname = "menu"; mtd5.title = "Odnośniki, ciekawe materiały..."; mtd5.id ="menutd5"; mkomorka5 = document.getelementbyid("menutr"); mkomorka5.appendchild(mtd5); /* Piąte A */ ma5 = document.createelement("a"); ma5.href = "linki.shtml"; ma5.classname = "menu"; ma5.id = "menua5"; mkotwica5 = document.getelementbyid("menutd5"); mkotwica5.appendchild(ma5); mtekstdoa5 = document.createtextnode("linki"); mmiejscetekstudoa5 = document.getelementbyid("menua5"); mmiejscetekstudoa5.appendchild(mtekstdoa5); W sekcji <body>: Adres e-mail <span id="emailtekst"></span> <script src="email.js"></script> // ================ Zawartość pliku email.js ============= user = "ewa"; domena = "op.pl"; tematlistu = "?Subject=Ze strony WSE"; // Poniżej nie zmieniaj NIC: malpa = "@"; adres = user+malpa+domena; ahref = "mailto:"+adres+tematlistu; 1

// ================================================== // Tworzenie elementu A w pamięci aemailtekst = document.createelement("a"); aemailtekst.href = ahref; aemailtekst.id = "mojemail1"; // Miejsce wstawienia elementu A (zazwyczaj wewnątrz elementu <span>) kotwicaemailtekst = document.getelementbyid("emailtekst"); // Polecenie wstawiające element A z pamięci na stronę www kotwicaemailtekst.appendchild(aemailtekst); // ================================================== // Tworzenie w pamięci napisu wewnątrz elementu A tekstadres = document.createtextnode(adres); // Wybranie miejsca wstawienia napisu do elementu A miejscenapisudoaemailtekst = document.getelementbyid("mojemail1"); // Polecenie wstawiające napis z pamięci do wnętrza elementu A miejscenapisudoaemailtekst.appendchild(tekstadres); Przykłady getelementbyid( test ) - wyszukuje tylko jeden element na podstawie id getelementsbytagname( p )[0] - wyszuka wszystkie znaczniki <p> i ustawia fokus na pierwszym z nich; document.getelementbyid( menu ).getelementsbytagname( p )[0] - wyszuka wszystkie znaczniki <p> znajdujące się wewnątrz znacznika <div id= menu > i ustawia fokus na pierwszym z nich; document.body.bgcolor= black - zmienia kolor tła całej strony document.getelementbyid( okienko ).bgcolor= black - zmienia kolor tła w wybranym bloku tekstowym Definiowanie stylów mojatabelka = document.getelementbyid('tabelka'); mojatabelka.style.borderwidth="1px"; // lub z wieloma parametrami nazwaobiektu.style.csstext = "text-align: center; font-size: 16px; color: #ffffff"; Zamiana istniejącego tekstu miejsceusunieciazawartosci.replacechild(nowyobiekt, staryobiekt.firstchild); Usuwanie znacznika wraz z zawartością konkretnazawartosc = miejsceusunieciazawartosci.parentnode; konkretnazawartosc.removechild(miejsceusunieciazawartosci); Usunięcie samej zawartości znacznika miejsceusunieciazawartosci.removechild(miejsceusunieciazawartosci.firstchild); Odwołanie się do wartości znacznika var miejscezapisuemail = document.getelementbyid('txtemail'); var trescemaila = miejscezapisuemail.value; Sprawdzanie czy znacznik ma atrybut miejsceznacznika = document.getelementbyid("idznacznika"); if (miejsceznacznika.hasattribute("align")) 2

alert("znacznik ma atrybut align"); Sprawdzanie czy znacznik ma jakiekolwiek atrybuty miejsceznacznika = document.getelementbyid("idznacznika"); if (miejsceznacznika.hasattribute()) alert("znacznik ma jakieś atrybuty"); Sprawdzanie czy opcja jest wybrana miejscezaznaczeniaopcji = document.getelementbyid("idznacznika"); if (miejscezaznaczeniaopcji.checked) alert("opcja jest zaznaczona."); to samo standardową metodą JavaScripts: if (document.forms[0].nazwapola[1].checked) alert("opcja jest zaznaczona."); Tworzenie elementu wywołującego funkcje function testowa() alert( Hello! ); kotwica = document.createelement( a ); kotwica.id = CośTam ; kotwica.onclick = testowa; // Nazwa funkcji bez nawiasów!!! lub kotwica.setattribute( onclick, testowa ); Włączanie / wyłączanie klasy Klikając w element, raz włączamy mu jakąś klasę, po powtórnym klinięciu usuwamy ją (i tak na okrągło). Do poniższego kodu należy utworzyć element, w którego będziemy klikać i który będzie wywoływał onclick. CSS:.ukryty display: none; HTML: <div id= Pudełko >Moje menu</div> DOM: ElementDoPokazania = document.getelementbyid( Pudelko ); ElementDoPokazania.classList.toggle("ukryty"); Efekt Hover <a id="link" href="http://"><b>aa</b></a><br/> <script type="text/javascript"> function over(e) textnode = document.createtextnode(':'); this.insertbefore(textnode, this.childnodes[0]); function out(e) 3

this.removechild(this.childnodes[0]); document.getelementbyid("link").onmouseover = over; document.getelementbyid("link").onmouseout = out; </script> Efekt Focus Pseudo klasa :focus (w arkuszu stylów) działa tylko ze znacznikami edytowalnymi, np. textarea, button, input, a. Nie działa z div, p, td. Można za to rozwiązać w ten sposób: <table> <tr> <td id="komorka1" style="background-color: green;" ><a href="#" onclick="document.getelementbyid('komorka1').style.backgroundcolor='red'; document.getelementbyid('komorka2').style.backgroundcolor='green'">komórka 1</a> jakiś inny tekst</td> <td id="komorka2" style="background-color: green;" ><a href="#" onfocus="document.getelementbyid('komorka2').style.backgroundcolor='red'; document.getelementbyid('komorka1').style.backgroundcolor='green'">komórka 1</a> jakiś inny tekst</td> </tr> </table> Można to zrobić także z użyciem funkcji: znacznika.onfocus = function () document.getelementbyid("td1").style.backgroundcolor = 'yellow'; ; W powyższym przypadku, po kliknięciu w odnośnik <a> zmianiane jest tło komórki <td> (jeśli akurat menu mamy w tabeli). Menu z efektem Focus Jeśli menu stworzone jest w tabeli: mtd = document.createelement("td"); /* Poniżej sprawdzamy pierwsze 5 liter w nazwie aktualnie załadowanego pliku */ var pelnasciezka = window.location.pathname; var nazwapliku = pelnasciezka.substring(pelnasciezka.lastindexof('/')+1); var krotkanazwapliku = nazwapliku.slice(0, nazwapliku.length-5); var pierwsze5znakow = krotkanazwapliku.slice(0,5) if (pierwsze5znakow == "infor") var klasaprzyciskutd1 = "menuactive"; var klasaprzyciskutd2 = "menu"; else if (pierwsze5znakow == "etyka") var klasaprzyciskutd1 = "menu"; var klasaprzyciskutd2 = "menuactive"; else var klasaprzyciskutd1 = "menu"; var klasaprzyciskutd2 = "menu"; mtd.classname = klasaprzyciskutd1; mtd.title = "Informatyka szkolna, zajęcia komputerowe..."; mtd.id ="menutd1"; mkomorka1 = document.getelementbyid("menutr"); mkomorka1.appendchild(mtd); 4

Jak wczytać zawartość innego pliku? Za pomocą technologii Ajax, można wczytywać pliki do <div>. Ale mogą to być tylko pliki znajdujące się w tej samej domenie, co strona źródłowa (są to ograniczenia ze względu na bezpieczeństwo). Do wczytywania zewnętrznych plików można też użyć <iframe> lub <object>. 5