Javascript

advertisement
Javascript
Vandaag
• Samenvatting functies
• Uitwerkingen Puzzels
• Pauze();
• DOM
• Formulieren
• DOM-opdrachten
Functies
var optellen = function(){
getal1 = prompt("getal1?");
getal2 = prompt("getal2?");
antwoord = parseInt(getal1) +
parseInt(getal2);
alert(antwoord);
}
optellen();
Functies en parameters
var optellen = function( getal1, getal2){
antwoord = getal1 + getal2;
alert(antwoord);
}
optellen(4,2);
onclick
<input type="button" value="klik" onclick="optellen();" />
<script>
var optellen = function(){
getal1 = prompt("getal1?");
getal2 = prompt("getal2?");
antwoord = parseInt(getal1) + parseInt(getal2);
alert(antwoord);
}
}
</script>
Puzzels
• Uitwerking opgave 1, 2 en 3
Pauze
var pauze = function(vloeistof, brandstof){
alert("Drink " + vloeistof);
alert("Eet " + brandstof);
}
pauze(koffie, brood);
Robot Harry
kijken();
if(afstand > 10cm){
rechtdoorlopen();
Else
naarlinksdraaien();
DOM
Het Document Object
Model is een platformen taalonafhankelijke
interface die er voort
zorgt dat programma’s
en scripts de inhoud,
structuur en stijl van het
document kunnen
bewerken
Objecten
object
functie/betekenis
navigator
Informatie over de browser zelf, zoals welke versie, welk
besturingssysteem, etc
window
Informatie over het browservenster, zoals dimensie, status, etc
document
Het HTML-document zelf (alles wat in het venster getoond wordt)
history
Lijst van bezochte pagina’s
location
Huidige url
forms
Representeert het formulier op de webpagina
Eigenschappen
• Objecten vertellen iets over de componenten
waaruit een webpagina is opgebouwd.
• Eigenschappen vertellen iets over de manier
waarop die componenten zijn vormgegeven
– Voorbeeld
document.body.style.backgroundColor = “black”;
Methoden
• Opdracht die een object kan uitvoeren
– Voorbeeld
• document.write(“<h1>Hello World</h1>”);
Document
Document
• Soort boomstructuur waarbij elke tak van de
boom een object is welke door javascript
benadert en gemanipuleerd kan worden
DOM-opdracten
getElementById()
Vindt element in de boomstructuur met aangegeven id
getElementsByTagName()
Vindt alle elementen van de aangegeven tag
getElementsByClassName()
Vindt alle elementen waarop de CSS-klasse van
toepassing is
querySelector()
Vindt alle elementen op basis van CSS selectors
(vergelijkbaar met jQuery)
appendChild()
Voegt een child-node toe als laatste node aan een
aangegeven element
removeChild()
Verwijdert een child-node van een aangegeven element
replaceChild()
Vervang een child-node door een ander
parentNode()
Vindt het parent-element van het huidige element
nextSibling()
Vindt het volgende element op hetzelfde niveau als het
huidige element
previousSibling()
Vindt het vorige element op hetzelfde niveau als het
huidige element
insertBefore()
Voegt een node toe, voorafgaand aan een aangegeven
node
DOM opdrachten
• Selecteren met getElementById
Hele object:
– document.getElementById('divNaam')
Eigenschap (met punt notatie)
– document.getElementById('divNaam').innerHTML
– document. getElementById('invoerVeld').value
– document. getElementById('radioButton').checked
DOM opdrachten
• Uitlezen
Eigenschap (met punt notatie)
var divTekst = document.getElementById('divNaam').innerHTML
var invoer1 = document. getElementById('invoerVeld').value
var radio1 = document. getElementById('radioButton').checked;
DOM opdrachten
• Aanpassen
Eigenschap (met punt notatie)
– document.getElementById('divNaam').innerHTML = "Hello world";
– document. getElementById('invoerVeld').value = " ";
– document. getElementById('radioButton').checked = true;
DOM opdrachten
• Voorbeeld getal raden
Eindopdracht
• Voorbeeld
• Niveau's
– Niveau 1 = prompt/alert
– Niveau 2 = getElementById's
– Niveau 3 = jQuery
• Code kan je hergebruiken(upgraden)
Eindopdracht
• Bekijk alle wireframes en functionaliteiten
• Denk alvast na over een Social Media dienst
Huiswerk
• Puzzels – opgave 4 en 5 (af)maken
• Codecademy oefeningen maken (zie SHL)
• Functionaliteiten realiseren (zie SHL)
• Github synchroniseren
Tips
• Bij opgave 5 kan je radiobuttons gebruiken
• Maar je mag ook twee invoervelden gebruiken
Download