Style CSS definicja i wykorzystanie klasy

Podobne dokumenty
Programowanie obiektowe. Wykład 3

JAVAScript - obiekty HTML

2.JAVAScript - obiekty HTML

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

Danuta ROZPŁOCH-NOWAKOWSKA Strona Moduł 4. Przykład 1. Przykład 2. HTML 4.01 Transitional).

Informatyka MPDI 3 semestr

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

Programowanie obiektowe. Wykład 4

Informatyka 2MPDI. Wykład 4

Krótki przegląd własności języka CSS

Podstawy HTML i styli CSS. selektor {właściwość1: wartość1; właściwość2: wartość2}


Model blokowy. Model blokowy w CSS

Zdefiniowane style mogą określać układ treści na stronie i sposób jej formatowania np. kolor czcionki, pogrubienia, tło tabel, rysunków itp.

za pomocą: definiujemy:

XML extensible Markup Language. część 5

Ćw.4 Dokumenty HTML Przy pomocy języka znaczników opisać można strukturę witryny internetowej, postać i wygląd jej elementów.

Box model: Content. Content - obszar zawartości określany jest za pomocą deklaracji wysokości i szerokości.

Funkcje i instrukcje języka JavaScript

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

DOM (Document Object Model)

kaskadowe arkusze stylów

Krok 1: Stylizowanie plakatu

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

Kaskadowe arkusze stylów (CSS)

CSS pozwala przypisać poszczególnym elementom na. grubość, rozmiar czcionki, kolor tła, odległości między

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

CSS - 2. Właściwości tekstu, czcionek

Projektowanie aplikacji internetowych. CSS w akcji

p { color: yellow; font-weight:bold; }

Mechatronika PWSW. Informatyka. Wykład 2

Programowanie WEB PODSTAWY HTML

Witryny i aplikacje internetowe

LABORATORIUM 3 WSTĘP DO SIECI TELEINFORMATYCZNYCH CSS CECHY WYBRANYCH SELEKTORÓW

CSS. Kaskadowe Arkusze Stylów

CSS - layout strony internetowej

Rys.2.1. Drzewo modelu DOM [1]

Laboratorium 1: Szablon strony w HTML5

Technologie informacyjne Mechatronika PWSW. W4-24.XI Pakiet Office edytor HTML

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

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

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

Systemy internetowe Wykład 2 CSS

Dokument hipertekstowy

I. Wstawianie rysunków

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

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

SterBox. Przygotowanie Strony Użytkownika

Ćwiczenia laboratoryjne nr 8 Podstawy języka XML.

Podstawy (X)HTML i CSS

Przykład integracji kalkulatora mbank RATY na platformie IAI

Ćwiczenie 9 - CSS i wstawianie CSS

Wprowadzenie do Internetu zajęcia 3

TECHNOLOGIE SIECI WEB

Tworzenie Stron Internetowych. odcinek 6

Znaczniki języka HTML

Laboratorium 6 Tworzenie bloga w Zend Framework

Zajęcia 4 - Wprowadzenie do Javascript

zmiana koloru tła <body bgcolor = kolor > tło obrazkowe <body background= ścieżka dostępu do obrazka >

I. Formatowanie tekstu i wygląd strony

używane skróty: HTTP - protokół do transferu tekstu, hipertekstu, zbiorów binarnych URL - jednolity lokalizator zasobów

Tworzenie stron internetowych w kodzie HTML Cz 5

Aplikacje internetowe

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

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

Dziedziczenie. Dziedziczenie i kaskadowość. Dodał Administrator środa, 10 marzec :00. Tematy: Dziedziczenie Kaskadowość

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

Języki programowania wysokiego poziomu. CSS Wskazówki

Kaskadowe arkusze stylów cz. 2

Arkusze stylów CSS Cascading Style Sheets

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

Tworzenie Stron Internetowych. odcinek 7

Sierpień 2015 rozwiązanie plik: index.htlm

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

PORADNIK KODOWANIA: CSS

plansoft.org Zmiany w Plansoft.org

XML extensible Markup Language. część 5

HTML (HyperText Markup Language)

Kaskadowe arkusze stylów

Dokumentacja Skryptu Mapy ver.1.1

Tworzenie stylów w HTML

Wykład 03 JavaScript. Michał Drabik

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

Elementarz HTML i CSS

Specyfikacja techniczna dot. mailingów HTML

EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE Rok 2018 CZĘŚĆ PRAKTYCZNA

Podstawy JavaScript ćwiczenia

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

Przedmiot: Grafika komputerowa i projektowanie stron WWW

2. Prezentacja wizualna

Tworzenie Stron Internetowych. odcinek 6

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

Rozwiązania zadań EGZAMINACYJNYCH- WITRYNY

O stronach www, html itp..

Moduł IV Internet Tworzenie stron www

LABORATORIUM 2 WSTĘP DO SIECI TELEINFORMATYCZNYCH

HTML podstawowe polecenia

Wrocław dn. 20 kwietnia 2006 roku. Temat lekcji: Style CSS.

EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE Rok 2018 CZĘŚĆ PRAKTYCZNA

EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE Rok 2019 CZĘŚĆ PRAKTYCZNA

Transkrypt:

ICT Wykład 2

Style CSS definicja i wykorzystanie klasy Plik style.css p {font-size: 44px;}.czerwony {background-color:#ff0000;} Plik index.html <HTML><HEAD><TITLE>Indeks: elementy</title> <LINK rel="stylesheet" href="style.css" type="text/css" /> </HEAD> <BODY> <P class="czerwony"> To jest tekst 1</P> <TABLE class="czerwony"> <TR><TD>AAA</TD></TR> </TABLE> </BODY></HTML>

Można też zawężać definicję klasy do pewnych typów znaczników p.czerwony {background-color:red;} tylko akapity klasy czerwony będą miały tylko akapity klasy czerwony b d miały czerwone tło

Znaczniki mogą należeć do wielu klas <HTML> <HEAD> <STYLE type="text/css">.szary{background-color:lightgrey;}.czerwony{color:red}.duzy{font-size:30px} </STYLE> </HEAD> <BODY style="margin:130 140 140 140"> <P class="czerwony szary duzy">szare tło</p> <TABLE style="border:1px solid green"> <TR> <TD class="czerwony duzy"> tekst1</td><td> tekst</td><td> tekst </TD> </TR> <TR> <TD> tekst</td><td> tekst</td><td> tekst </TD> </TR> </TABLE> </BODY> </HTML>

Przypisanie cech znacznikom posiadającym identyfikatory <HTML> <HEAD> <TITLE> Moja strona testowa </TITLE> <STYLE type="text/css"> #szary {background-color:lightgrey;}.czerwony{color:red}.duzy{font-size:30px} </STYLE> </HEAD> <BODY style="margin:130 140 140 140"> <P id="szary" class="czerwony duzy">szare tło</p> </BODY> </HTML>

Przykład skryptu HTML z arkuszem stylów <HTML> <HEAD> <TITLE> Moja strona </TITLE> <LINK rel="stylesheet" href="style.css" type="text/css" /> </HEAD> <BODY> <TABLE> <TR> <TD> AA </TD> <TD> AB </TD></TR> <TR> <TD> BA </TD> <TD> BB </TD> </TR> <TR> <TD id="inna"> CA </TD> <TD> CB </TD> </TR> </TABLE> <UL class="lista"> <LI> <A HREF="http://www.onet.pl">Onet</A> </LI> <LI> <A HREF="http://www.google.pl">GOOGLE</A> </LI> <LI> <A HREF="http://www.interia.pl">INTERIA</A> </LI> </UL> </BODY> </HTML> plik style.css body{ background-color:yellow; font-size:30px} table{border:3px solid red;} #inna {background-color:orange}.lista {font-size:37px}

DOM model dokumentu HTML Dokument HTML składa się z obiektów (standardowych i utworzonych przez użytkownika). Głównym obiektem jest document, posiada strukturę drzewiastą składowych (obiektów wewnętrznychznaczników na stronie) tworzących tzw. DOM (Document Object Model). Wykorzystamy to używając języka Java Script do stworzenia pewnych funkcjonalności, mogących być użytecznymi dla portalu biznesowego

Przypomnienie węzeł tekstowy

Obiekt document Obiekt document zawiera informacje o bieżącej stronie i dostarcza wielu sposobów wyświetlania strony HTML. Składnia wykorzystania właściwości i metod: document.właściwość lub document.metoda( )

UWAGI Właściwości mogą być tekstem, obiektem, kolekcją obiektów. Właściwość może być kolekcją, do jej elementów mamy dostęp jak do tablicy (indeks zaczyna się od 0), np.: p=x.childnodes[4] p jest piątym obiektem podrzędnym obiektu x Metoda może zwracać kolekcje, do poszczególnych składowych mamy dostęp jak do tablicy (indeks zaczyna się od 0) x=document.getelementsbytagname("div")[0] x jest pierwszym obiektem typu DIV dokumentu html Liczbę elementów w kolekcji zawiera właściwość length. Jeśli właściwości są typu obiektowego to mają kolejne właściwości. Właściwościom nadajemy wartości, badamy je lub wypisujemy Metody (funkcje) wykonujemy w osobnej instrukcji.

Wybrane właściwości obiektu document Właściwość Opis document.linkcolor określa kolor odsyłaczy document.bgcolor określa kolor tła document.fgcolor określa kolor tekstu document.lastmodified zawiera datę i czas ostatniej modyfikacji dokumentu document.location zawiera bieżący adres URL dokumentu document.title zawiera zawartość znacznika <TITLE> document.body zawiera element (obiekt) body document.links zawiera kolekcję wszystkich hiperłączy w dokumencie kolekcja (TABLICA - zawiera właściwość length- liczba elementów kolekcji) document.title zawiera tytuł dokumentu document.url zawiera pełny URL dokumentu

Metody obiektu document styl "wielbłądzi" nazw wyprowadzenie na ekran document.write() document.writeln() dostęp do elementów document.getelementbyid("id") document.getelementsbytagname("znacznik") zwraca kolekcję elementów document.getelementsbyname("nazwa") kolekcja tworzenie nowego elementu document.createtextnode("tekst") document.createelement("znacznik")

<HTML><HEAD> <TITLE>TEST obiektu document</title></head> <BODY style="font-size:18px"> <P>Przykłady wykorzystania obiektu document</p> <P> Akapit na stronie</p> <A href="http://www.youtube.com">youtube</a> <A href="http://www.facebook.com">facebook</a> <PRE> <SCRIPT language="javascript"> //ustalanie właściwości dokumentu document.bgcolor="yellow"; document.linkcolor="red"; document.fgcolor="green"; //wyświetlanie właściwości document.writeln("data utworzenia:",document.lastmodified); document.writeln("url:",document.url); document.writeln("location:",document.location); document.writeln("tytuł:",document.title); document.writeln("linków jest:", document.links.length); //elementy kolekcji w pętli for (k=0;k<document.links.length;k++) document.writeln("link ",k,":",document.links[k]);//jak tablica (indeks) </SCRIPT> </PRE></BODY></HTML>

Wykorzystanie własnej funkcji do ustawienia właściwości <HTML><HEAD> <TITLE> Przykłady wykorzystania obiektu document</title> <SCRIPT language="javascript"> function czerwony() {document.bgcolor="red";} function zielony() {document.bgcolor="green";} </SCRIPT> </HEAD> <BODY style="font-size:18px"> <INPUT type="button" value="czerwone" onclick="czerwony()"> <INPUT type="button" value="zielone" onclick="zielony()"> </BODY></HTML>

.. albo inaczej jedna funkcja z argumentem <HTML><HEAD> <TITLE> Przykłady wykorzystania obiektu document</title> <SCRIPT language="javascript"> function setkolor(k) { } </SCRIPT> </HEAD> document.bgcolor=k; <BODY style="font-size:18px"> <INPUT type="button" value="czerwone" onclick="setkolor('red')"> <INPUT type="button" value="zielone" onclick="setkolor('green')"> </BODY></HTML> Uwaga: ' ' wewnątrz " "

Dostęp do elementów strony Tworzenie referencji do istniejącego elementu (obiektu) zmiennej reprezentującej element na stronie - najwygodniej wykonać instrukcją: var element = document.getelementbyid("identyfikator"); pobierz element dokumentu o pewnym id albo var element = document.getelementsbytagname("znacznikhtml"); pobierz wszystkie elementy dokumentu o pewnym znaczniku HTML to będzie kolekcja - TABLICA

Ważniejsze właściwości tak pobranego elementu: node(ang. węzeł) element.childnodes kolekcja węzłów dla elementu - zawiera atrybut length (liczba elementów kolekcji), każdy węzeł ma nodename, nodetype i jeśli węzeł tekstowy ma nodevalue element.style dostęp do ustawiania atrybutu style elementu element.attributes kolekcja atrybutów elementu - mają one właściwości: length liczba atrybutów [nr].name nazwa [nr].value wartość atrybutu element.innerhtml suma wartości węzłów tekstowych

Przykład1 mamy tak zagnieżdżające się znaczniki <HTML><HEAD></HEAD><BODY> <DIV id="d1" style="border:1px solid red; width:70%"> 11111111 <DIV> AAAAAAAAAAAAA </DIV> 222222222222 <DIV> BBBBBBBBBBBBB </DIV> 3333333333333 </DIV> 5 węzłów

<SCRIPT language="javascript"> var x=document.getelementbyid("d1") //pobierz element document.write("div d1 ma "+x.childnodes.length+" węzłów<br />") document.write("czyli: 1text 2DIV 3text 4DIV 5text<BR />") document.write("div childnodes[0] :",x.childnodes[0],"<br />") document.write("div childnodes[1] :",x.childnodes[1],"<br />") document.write("div childnodes[2] :",x.childnodes[2],"<br />") document.write("div childnodes[3] :",x.childnodes[3],"<br />") document.write("div childnodes[4] :",x.childnodes[4],"<br />") document.write("węzeł 0:<BR />") document.write("div childnodes[0].nodename :",x.childnodes[0].nodename, "<BR />") document.write("div childnodes[0].nodetype :",x.childnodes[0].nodetype, "<BR />") document.write("div childnodes[0].nodevalue :",x.childnodes[0].nodevalue, "<BR />") document.write("i inne...:<br />") document.write("węzeł 1:<BR />") document.write("div childnodes[1].nodetype :",x.childnodes[1].nodetype,"<br />") document.write("div childnodes[1].nodename :",x.childnodes[1].nodename,"<br />")

document.write("węzeł 2:<BR />") document.write("div childnodes[2].nodetype :",x.childnodes[2].nodetype,"<br />") document.write("div childnodes[2].nodename :",x.childnodes[2].nodename,"<br />") document.write("div childnodes[2].nodevalue :",x.childnodes[2].nodevalue,"<br />") document.write("węzeł 3:<BR />") document.write("div childnodes[3].nodetype :",x.childnodes[3].nodetype,"<br />") document.write("div childnodes[3].nodename :",x.childnodes[3].nodename,"<br />") document.write("węzeł 4:<BR />") document.write("div childnodes[4].nodetype :",x.childnodes[4].nodetype,"<br />") document.write("div childnodes[4].nodename :",x.childnodes[4].nodename,"<br />") document.write("div childnodes[4].nodevalue :",x.childnodes[0].nodevalue,"<br />")

document.write("można też tak:<br />") document.write("div childnodes.item(0) :",x.childnodes.item(0),"<br />") document.write("div childnodes.item(1) :",x.childnodes.item(1),"<br />") document.write("div childnodes.item(2) :",x.childnodes.item(2),"<br />") document.write("div childnodes.item(3) :",x.childnodes.item(3),"<br />") document.write("div childnodes.item(4) :",x.childnodes.item(4),"<br />") document.write("div childnodes[0]: ",x.childnodes[0],"<br />") document.write("div childnodes[1]: ",x.childnodes[1],"<br />") document.write("div childnodes[2]: ",x.childnodes[2],"<br />") document.write("div childnodes[3]: ",x.childnodes[3],"<br />") document.write("div childnodes[4]: ",x.childnodes[4],"<br />") pierwszy potomek document.write("div firstchild: ",x.firstchild,"<br />") document.write("div firstchild.nodevalue: ",x.firstchild.nodevalue,"<br /> /") document.write("div firstchild.nextsibling: ",x.firstchild.nextsibling,"<br />") document.write("atrybut 0 naszego DIV ma nazwę: ", x.attributes[0].name) document.write("<br /><BR /><B>InnerHTML:</B><BR />",x.innerhtml) </SCRIPT></BODY></HTML> następny brat (rodzeństwo)

lub pętla <DIV id="d1" style="border:1px solid red;width:70%"> 11111111 <DIV class="z"> AAAAAAAAAAAAA </DIV> 222222222222 <DIV class="z"> BBBBBBBBBBBBB </DIV> 3333333333333 </DIV> <SCRIPT language="javascript"> var x=document.getelementbyid("d1") //pobierz element document.write("div ma "+x.childnodes.length+" węzłów<br />") document.write("czyli: 1text 2DIV 3text 4DIV 5text<BR />") for (n=0;n< x.childnodes.length;n++) document.write("div childnodes[",n,"] :",x.childnodes[n],"<br />") </SCRIPT>

inny przykład <HTML><HEAD> <TITLE> Przykłady obiektowe</title> </HEAD> <BODY style="font-size:48px"> <DIV name="c1" style="color:red">a</div> <DIV name="c1" style="color:green">b</div> <DIV name="c1" style="color:blue">c</div> <HR /> <SCRIPT language="javascript"> document.write(document.getelementsbyname("c1").length,"<br />"); for (k=0; k<document.getelementsbyname("c1").length;k++){ document.write(document.getelementsbyname("c1")[0].innerhtml,"<br />"); } </SCRIPT> </BODY></HTML>

Atrybut style jest również obiektem, poniżej ważniejsze właściwości: Właściwość backgroundcolor border borderstyle bordercolor borderbottom borderbottomcolor borderbottomstyle borderbottomwidth borderleft bordertop borderright margin marginbottom marginleft marginright margintop color fontfamily fontsize fontstyle fontweight textalign Opis znaczenia ustalenie lub pobranie koloru tła elementu ustawienie (np. "1px solid red") lub pobranie cech obramowania ustawienie (np. "solid") lub pobranie stylu obramowania ustawienie (np. "red") lub pobranie koloru obramowania dolna krawędź obramowania j.w. dolna krawędź obramowania kolor np. "blue" dolna krawędź obramowania styl np. "dotted" dolna krawędź obramowania szerokość podobnie j.w. margines np. "12px 20mm 2 cm 20px" góra prawy dolny lewy j.w. ustawienie (np. "14px solid red") lub pobranie koloru czcionki ustawienie (np. "Arial") lub pobranie rodziny czcionki ustawienie (np. "15px") lub pobranie rozmiaru czcionki ustawienie (np. "italic") lub pobranie stylu czcionki ustawienie (np. "bold") lub pobranie grubości czcionki ustawienie (np. "center") lub pobranie wyrównania tekstu

Zmiana stylu znacznika <HTML><HEAD> <TITLE> Przykłady obiektowe</title></head> <BODY style="font-size:18px"> <TABLE style="border:1px solid red;font-size:25px"> <TR><TD>a1</TD> <TD>a2</TD><TD>a3</TD></TR> <TR><TD>b1</TD> <TD>b2</TD><TD>b3</TD></TR> </TABLE> <SCRIPT language="javascript"> x=document.getelementsbytagname("td") //pobierz elementy wg znacznika! x[0].style.border="6px solid red"; x[1].style.backgroundcolor="blue"; document.write(x[1].style.backgroundcolor); </SCRIPT> </BODY></HTML>

Interakcyjna zmiana stylu znacznika <HTML><HEAD> <TITLE> Przykłady obiektowe</title> <SCRIPT language="javascript"> function setramka(n, kolor){ var x=document.getelementsbytagname("td") //pobierz elementy TD! x[n].style.border="3px solid "+kolor } </SCRIPT> uwaga na spację po solid </HEAD> <BODY style="font-size:18px"> <TABLE style="border:1px solid red"> <TR><TD>a1</TD> <TD>a2</TD><TD>a3</TD></TR> <TR><TD>b1</TD> <TD>b2</TD><TD>b3</TD></TR> </TABLE> Wpisz numer od 1 do 6<INPUT type="text" id="pole"> <INPUT type="button" value="ustaw kolor" onclick="setramka(pole.value-1, 'red')"> </BODY></HTML>

Proste sterowanie położeniem przez cechę margin <HTML><HEAD> <TITLE> Przykłady obiektowe</title> <SCRIPT language="javascript"> function setmargin(m){ var x=document.getelementsbytagname("div") //pobierz elementy wg znacznika!!!! x[0].style.marginleft=m+"px" } </SCRIPT> </HEAD> <BODY style="font-size:18px"> <DIV style="border:1px solid red; width:100px;height:100px; marginleft:200px;border:3px solid red"> </DIV> <INPUT type="button" value="prawo" onclick="setmargin(300)"> <INPUT type="button" value="lewo" onclick="setmargin(100)"> </BODY></HTML>

<HTML><HEAD> <TITLE> Przykłady sterowania margin2</title> <SCRIPT language="javascript"> function setmargin(){ var x=document.getelementsbytagname("div") //pobierz elementy wg znacznika!!!! } albo reakcja na kliknięcie obiektu if (x[0].style.marginleft=="200px") else </SCRIPT> </HEAD> x[0].style.marginleft="300px" x[0].style.marginleft="200px" <BODY style="font-size:18px"> <DIV style="border:1px solid red; width:100px;height:100px; marginleft:200px;border:3px solid red" onclick="setmargin()"> </DIV> </BODY></HTML>

Sterowanie na płaszczyźnie <HTML><HEAD> <TITLE> Przykłady sterowania</title> <STYLE type="text/css"> div.x{border:1px solid red; width:100px;height:100px;background-color:red; marginleft:0px;} div.z{ border:1px solid red; width:300px;height:300px;border:1px solid green; marginleft:200px;} </STYLE> <SCRIPT language="javascript"> function setmargin(m){ } var x=document.getelementbyid("d1") //pobierz element o id=d1 x.style.marginleft=m+"px" function setmargin2(m){ } var x=document.getelementbyid("d1") //pobierz element o id=d1 x.style.margintop=m+"px" </SCRIPT> </HEAD> cd..

<BODY style="font-size:18px"> <INPUT type="button" value="prawo" onclick="setmargin(200)"> <INPUT type="button" value="lewo" onclick="setmargin(0)"> <INPUT type="button" value="dół" onclick="setmargin2(200)"> <INPUT type="button" value="góra" onclick="setmargin2(0)"> <DIV class="z"> <DIV id="d1" class="x"> </DIV> </DIV> </BODY></HTML>

Przydatne metody dla zmian struktury obiektów document.createelement(typ) document.createtextnode(tekst) utworzenie elementu o typie znacznika utworzenie węzła tekstowego element.appendchild(element_dołączany) dołączanie elementu do innego elementu (na końcu) element.clonenode(true) powielenie elementu - klonowanie element.removechild(element_dziecko); usunięcie elementu podrzędnego element.replacechild(el_nowy,el_stary); podmiana elementu podrzędnego element.setattribute(nazwa, wartość) ustawianie atrybutu element.getattribute(nazwa) pobieranie atrybutu append = dołącz create = utwórz clone = klonuj, kopiuj remove = usuń replace= zamień set = ustaw get = pobierz

Tworzenie nowego elementu na końcu strony <HTML><HEAD> <SCRIPT language="javascript"> function fun(d1) { //ustawianie parametrów stylu istniejącego DIV d1.style.color="red";d1.style.fontsize="28px"; d1.style.border="4px solid blue";d1.style.color="yellow"; d1.style.width="600px";d1.style.marginleft="200px"; d1.style.background="green";d1.style.textalign="center"; //tworzenie elementu - tworzymy drugi DIV d2=document.createelement("div"); //ustalamy style dla nowego DIV'a d2.style.border="4px solid red";d2.style.margin="0px 100px 0px 100px"; d2.style.textalign="center";d2.style.fontsize="32px"; //tworzymy węzeł tekstowy var t2=document.createtextnode("drugi DIV"); //dołaczamy węzeł tekstowy do nowego div'a d2.appendchild(t2); //dołączamy DIV na końcu strony dołączenie do BODY document.body.appendchild(d2); }</SCRIPT> </HEAD> cd.

<BODY style="font-size:18px"> <!-- Istniejący DIV --> <DIV onclick="fun(this)">kliknij tu.. </DIV> </BODY></HTML> funkcja uruchamiana kliknięciem w ten DIV

Słowo kluczowe this Nadając i wykorzystując identyfikatory właściwości i metod korzystamy ze słowa kluczowego this. Rozumiane jest ono jako obiekt bieżący, właściciel metody lub właściwości. Poniżej prosty przykład:

Przykład <HTML> <HEAD> </HEAD> <BODY style="font-size:18px"> <P> AKAPIT</P> <PRE> <SCRIPT language="javascript"> function kolor1( ) { this.document.bgcolor = "red"; } function kolor2(e) { e.style.color = "yellow"; } </SCRIPT> </PRE> <INPUT type="button" value="kolor dla tła okna" onclick="kolor1( )"> <INPUT type="button" value="kolor napisu przycisku" onclick="kolor2(this)"> </BODY> </HTML>

W powyższym przykładzie mamy dwie własne funkcje. W pierwszej o nazwie kolor1 ustalamy kolor tła dla bieżącego obiektu (this) - którym jest domyślnie window. Druga funkcja o nazwie kolor2 zmienia kolor czcionki Druga funkcja o nazwie kolor2 zmienia kolor czcionki przekazanego do funkcji obiektu e - wywoływana jest kliknięciem w przycisk z przekazaniem odniesienia do tego właśnie przycisku (this), a więc zmienia się kolor napisu na przycisku.

Tworzenie elementu potomnego do istniejącego elementu..uzupełnić poprzedni kod o funkcję function fun2(d) { //tworzymy akapit P p1=document.createelement("p"); p1.style.background="pink"; p1.style.marginleft="40px"; p1.style.marginright="40px"; // i tworzymy jego węzeł tekstowy tp1=document.createtextnode("akapit potomny do DIV"); //trzeba dołączyć węzeł tekstowy do akapitu p1.appendchild(tp1); // i dołączyć akapit do div d.appendchild(p1); } a w fun dopisać.. d2.setattribute("onclick","fun2(this)");

Usuwanie elementu <HTML><HEAD> <SCRIPT language="javascript"> function usun(d) { document.body.removechild(d); } </SCRIPT> </HEAD> <BODY style="font-size:18px"> <DIV onclick="usun(this)">div1</div> <DIV onclick="usun(this)">div2</div> </BODY></HTML> Uwaga: tu usuwamy element bezpośrednio potomny do body

Jeśli chcemy usunąć element w bardziej złożonej, głębszej strukturze, to należy wykorzystać jego element nadrzędny (parentnode węzeł "rodzic") <HTML><HEAD> <SCRIPT language="javascript"> function usun(d) { d.parentnode.removechild(d); } </SCRIPT> </HEAD> <BODY style="font-size:18px"> <DIV> <DIV onclick="usun(this)">div wewnętrzny</div> </DIV> </BODY></HTML>

<HTML> <HEAD> <SCRIPT language="javascript"> function Fun() { } var oryg = document.getelementbyid("lista2").lastchild; var klon = oryg.clonenode(true); document.getelementbyid("lista1").appendchild(klon); </SCRIPT> </HEAD><BODY> <UL id="lista1"><li>kawa</li><li>herbata</li></ul> <UL id="lista2"><li>woda</li><li>mleko</li></ul> <P>Kopiowanie z jednej listy na drugą.</p> <BUTTON onclick="fun()">klonuj</button> </BODY></HTML> Koniec listy bezpośrednio za ostatnim elementem, bo inaczej ostatnim będzie węzeł tekstowy