JavaScript. DOM Scripting

Relevanta dokument
JavaScript. Innehåll. Historia. Document object model DHTML. Varför Javascript?

JAVASCRIPT. Beteende

JavaScript. En Introduktion

E11 "Protection" Föreläsning 11, HT2014 Säkerhet, tillgänglighet. Johan Leitet. Kurs: 1dv403 Webbteknik I

Appar med ryggrad. Introduktion till JavaScriptramverket Backbone

JavaScript En Introduktion

Programmeringteknik. Planering MÅL LABB: MOMENT LAB4 HTML - EXEMPEL HTML. Webbdelen

JavaScript del 9 Dynamik och animeringar

Innehåll. JavaScript - Grundkurs. Vad är JavaScript? Vad är JavaScript? Vad behövs? Lite historia

INTRODUKTION TILL ANGULAR JS

Dynamisk HTML JavaScript och webbläsarens objektmodell

! HTML Formulär! JavaScript! Syntax! Events! DOM. ! URL variabler i en query string (get) ! HTTP post request (post)

E07 "Greased Lightning"

JavaScript. JavaScript Ramverk (Bibliotek) jquery + jquery UI

Visa och dölja element med JavaScript

JS & beteende. TNMK30 - Elektronisk publicering

Nätet. Uppgiften. Nivå

EDA095 HTML. Per Andersson. April 26, Lund University Innehåll: HTML, CSS, DOM, JavaScript

En introduktion till Dynamisk HTML (DHTML)

<script src= "

Föreläsning 4. CSS Stilmallar för webben

Webbprogrammering. Sahand Sadjadee

Tillämpad Programmering. Ekonomi + Spel + Javascript

DOM (Document Object Model) är modellen efter vilken en webbläsaren är uppbyggd. Alla objekt/element i webbläsaren finns hierarkiskt ordnade i DOM.

Introduk+on +ll programmering i JavaScript

Att bygga enkla webbsidor

Lektion 2 Del 1 Kapitel 6

Karlstads Universitet, Datavetenskap 1

Lektion 3 HTML, CSS och JavaScript

TDDD52 CSS. Färger. Färger 1/3/13

E13 Behind the Wild. Dagens agenda. Cookies Context/ändra context Augmentation (förstärkning) Klassiskt arv Att låna metoder Namespaces Postludium

Testautomatisering. HTML, Dev Tools, Watir

Repetition. Hypertext. Internet HTTP. Server och klient Text försedd med länkar till andra texter. Många sammankopplade nät

Repetition. Hypertext. Internet HTTP. Server och klient Föreläsning 2. Text försedd med länkar till andra texter. Många sammankopplade nät

PageSpeed Insights. Ta bort JavaScript- och CSS-kod som blockerar renderingen från innehåll ovanför mitten

HTML & webbteknik. Introduktion till HTML. Formatering. Struktur HTML. Uppdelning. Hur man skapar hemsidor. Öppen standard W3C. Plattformsoberoende

Labora&on 2 HTML och validering övningar/uppgi:er

Labora&on 1 Variabler och beräkningar övningar/uppgi9er

Alla filer som bearbetar PHP script ska avslutas med ändelsen.php, exempelvis ska en indexsida till en hemsida heta index.php

Webbprogrammering, DA123A, Studiematerial 4

Labora&on 5 CSS och layout samt fråga E övningar/uppgi>er

Lektion 5, del 1, kapitel 12

Laboration 3 HTML och struktur samt frågorna A - C övningar/uppgifter

F8 Webbteknologier 2. PHP PHP: Hypertext Preprocessor

En grundkurs i hemsidor och hur de är uppbyggda

HTML. Introduktion till HyperText Markup Language

PageSpeed Insights. Att komprimera resurser med gzip eller deflate kan minska antalet byte som skickas via nätverket.

E06 "Why We Fight" Föreläsning 6, HT2014 Document Object Model. Johan Leitet. Kurs: 1dv403 Webbteknik I

Introducerande övningar i HTML

Inlämningsuppgift 2. DA156A - Introduktion till webbutveckling Teknik och samhälle, Malmö högskola Oktober 2012

E13 "Behind the Wild"

ORDLISTA WEBBDESIGN 100P

TNMK30. Elektronisk publicering

PageSpeed Insights. (utgångsdatum har inte angetts)

Spelprogrammering med JavaScript och HTML5

Webbutveckling med AngularJS

PageSpeed Insights. Ta bort JavaScript- och CSS-kod som blockerar renderingen från innehåll ovanför mitten

F8 Webbteknologier 2. EDA095 Nätverksprogrammering. Roger Henriksson Datavetenskap Lunds universitet

Bilder. Bilder och bildformat

Introduktion HTML och PHP 732G16 Databaser design och programmering

Labora&on 2 Funk&oner, if och loop övningar/uppgi:er

Labora&on 8 Formulär övningar/uppgi6er

TDP013. Webbprogrammering och interaktivitet. AJAX, CORS & jquery. Marcus Bendtsen Institutionen för Datavetenskap (IDA)

HTML och CSS. Eric Elfving Institutionen för datavetenskap. 18 augusti 2015

Xhtml och CSS.Tillämpad fysik och elektronik Per Kvarnbrink (redigering Ulf Holmgren 2011)

Webbsidor och webbservrar

Övningar i JavaScript del 5

HTML och CSS. Eric Elfving Institutionen för Datavetenskap (IDA)

<header> </header> <footer> </footer>

Kursplanering Utveckling av webbapplikationer

Laboration 2: Xhtml och CSS.

Google Analy+cs. Umeå universitet

Övningar i JavaScript del 4

Internet A. HTML Grunder Maximilien Chiang 1

E07 "Greased Lightning"

Laboration 4. Laboration 4, Formulärvalidering. Inledning. Observera. Mål. Genomförande

Övning (X)HTML 2. Sidan 1 av

Laboration 6 Formulär och stränghantering övningar/uppgifter

Övnings hemtentamen med förslag till lösning, webbprogrammering

I den här labben ska vi använda oss av en trevlig nyhet i HTML5: Local Storage, för att implementera en sorts lokal gästbok.

Webbapplikationer Modul 3 - JavaScript

Exemple på Tentauppgifter Webbprogrammering

WEBBUTVECKLING Kursplanering

En integration av betalningssystem på hemsida

Du skall naturligtvis visa körexempel med output där det behövs i din rapport!

F06 A table form Dagens agenda

Lite mer om CGI-programmering

Avancerade Webbteknologier

Labora&on 4 CSS och validering övningar/uppgi9er

WEBDESIGN A - DTR 1210

MVC med Javascript och Ajax. Filip Ekberg

För att få respektive betyg krävs: 25 för godkänt, 37,5 för väl godkänt (obs betyget gäller tentan, inte kursen som helhet)

WiFi4EU-kontrollfunktion. Vägledning v1.0

Labora&on 4 CSS och validering samt fråga D övningar/uppgi?er

Att förstå hur man konstruerar modulära program Att kunna skapa nya funktioner Att förstå hur data skickas mellan funktioner

WEBDESIGN A - DTR 1210

Statistik från webbplatser

Labora&on 5 Dynamisk HTML och &mers övningar/uppgi=er

Webbdesign. maj 2008 Daniel Cronholm Sensus Studieförbund

E09 - Totally Tool Time

Transkript:

JavaScript DOM Scripting

Vad är Document object Model (DOM)? En standardiserad modell där man ser en webbsida och dess innehåll som objekt document.getelementsbytagname( p ); document.getelementbyid( mittid ) Children, Parents, Siblings och Values

HTML DOM Med en programmerbar objektmodell, får JavaScript all makt den behöver för att skapa dynamisk HTML HTML-element HTML-attribut CSS Reagera på händelser

HTML DOM (Document Object Model) När en webbsida laddas skapar webbläsaren en Document Object Model på sidan. HTML DOM-modellen är konstruerad som ett trädobjekt

Children, Parents, Siblings och Values <body> <h1>rubrik</h1> <p>textstycke</p> <h2>underrubrik</h2> <ul id="minlista"> <li>listvärde 1</li> <li>listvärde 1</li> <li><a href="http://www.di.se">di.se</a></li> </ul> </body>

Children, Parents, Siblings och Values <script> var minlista = document.getelementbyid('minlista'); var listenheter =minlista.getelementsbytagname('li'); for(var i = 0; i < listenheter.length; i++){ // Gör något smart } document.getelementbytagname('p')[0].firstchild.nodev alue='hej världen'; </script>

Läsa och ändra Attribut var firstlink = document.getelementbytagname( a )[0]; if(firstlink.getattribute( href ) == http://www.di.se ){ firstlink.setattribute( href, http://www.va.se ); }

Objektdetektering Kontroll om det finns stöd för DOM <script type=text/javascript> if (document.getelementbyid && document.createtextnode) { return; } else { // Mer kod } </script>

Ändra i ett HTML-dokument med DOM JavaScript kan skapa dynamiskt HTML-innehåll: Datum: Mån 30 Nov 15:31:29 UTC 0100 2012 document.write () kan användas för att skriva direkt i HTML innerhtml Det enklaste sättet att komma åt innehållet i ett HTML-element

Ändra i ett HTML-dokument med DOM <body> <p id="kurs">webbproduktion 2011</p> <script> x=document.getelementbyid("kurs"); document.write("<p>innehållet i id=kurs: " + x.innerhtml + "</p>"); document.getelementbyid("kurs").innerhtml="webbutveckli ng 2012"; x=document.getelementbyid("kurs"); document.write("<p>innehållet i id=kurs efter att den ändrats: " + x.innerhtml + "</p>"); </script> </body>

Ändra i ett HTML-dokument med DOM <body> <img id="image" src="us.jpg"> <script> document.getelementbyid("image").src="sbe.jpg"; </script> </body>

Skapa dynamiskt innehåll <body> <h1 id="id1">webbutveckling 2012</h1> <input type="button" value="röd text" onclick="document.getelementbyid('id1').style.color='red'" /> <input type="button" value= Svart text" onclick="document.getelementbyid('id1').style.color= black'" /> <input type="button" value="göm text" onclick="document.getelementbyid('id1').style.visibility='hidden'" /> <input type="button" value="visa text" onclick="document.getelementbyid('id1').style.visibility='visible'" /> </body>

Reagera på händelser En JavaScript kan köras när en händelse inträffar, som när en användare klickar på ett HTML-element. Att köra kod när en användare klickar på ett element, lägga till JavaScript-kod i ett HTML händelse attribut Exempel på HTML händelser: När en användare klickar med musen, onclick() När en webbsida har laddats, onload() När en bild har laddats, onload() När musen flyttas över ett element, onmouseover() När ett inmatningsfält är aktivt, onfocus()

Ändra HTML-element <head> <script> function changetext(id) { id.innerhtml="det är en bra kurs"; } </script> </head> <body> <h1 onclick="changetext(this)">webbutveckling 2012</h1> </body>

Visa text <body> <p>klicka på knappen för att köra en funktion</p> <button id="mybtn">klicka</button> <script> document.getelementbyid("mybtn").onclick=function() { displaydate() }; function displaydate() { document.getelementbyid("demo").innerhtml=date(); } </script> <p id="demo"></p> </body>

Mushändelser onmouseover(), onmouseout() <head> <script> function mover(obj){ obj.innerhtml="då händer det här } function mout(obj) { obj.innerhtml="nu har du haft musen här } </script> </head> <body> <div onmouseover="mover(this)" onmouseout="mout(this)" style="background-color:#d94a38;width:120px;height:20px;padding:40px;"> Placera musen här </div> </body>

Fokus onfocus() och onblur() <head> <script> function myfocus(x) { x.style.background="yellow"; } function myblur(x) { x.style.background="white"; } </script> </head> <body> Vad heter du? <input type="text" onfocus="myfocus(this)" onblur="myblur(this)" > <br/> Hur gammal är du? <input type="text" onfocus="myfocus(this)" onblur="myblur(this)" > <p>färgen byts på fältet när det är aktivt.</p> </body>

Skapa nya HTML-element Om du vill lägga till ett nytt element i HTML DOM måste du skapa elementet först, och sedan lägga till den till ett befintligt element <body> <div id="d1"> <p id="p1">text från HTML</p> <p id="p2">mer text från HTML</p> </div> <script> var para=document.createelement("p"); var node=document.createtextnode("text från JavaScript"); para.appendchild(node); var element=document.getelementbyid("d1"); element.appendchild(para); </script> </body>

Ta bort element <body> <div id="d1"> <p id="p1">html-text</p> <p id="p2">mer HTML-text</p> </div> <script> var parent=document.getelementbyid("d1"); var child=document.getelementbyid("p1"); parent.removechild(child); </script> </body>

Exempel W3schools - http://www.w3schools.com/js/js_ex_dom.asp