Inhoud

  1. Geen paragrafen H1 - Voorwoord
  2. Geeft paragrafen weer H2 - Wat is JavaScript?
    1. §1. Wat kun je met JavaScript?
    2. §2. De script-tag
    3. §3. Opdrachten
  3. Geeft paragrafen weer H3 - Statements (opdrachten)
    1. §1. Wat zijn statements?
    2. §2. Functie document.write
    3. §3. Commentaar
    4. §4. Functie alert
    5. §5. Opdrachten
  4. Geeft paragrafen weer H4 - Variabelen
    1. §1. Wat is een variabele?
    2. §2. Variabelen maken en gebruiken
    3. §3. Functie prompt
    4. §4. Operatoren
    5. §5. Strings
    6. §6. Opdrachten
  5. Geeft paragrafen weer H5 - Functies
    1. §1. Wat is een functie?
    2. §2. Functies maken en gebruiken
    3. §3. Functies die iets teruggeven
    4. §4. Parameters en argumenten
    5. §5. De scope van variabelen
    6. §6. Opdrachten
  6. Geeft paragrafen weer H6 - Loops en voorwaarden
    1. §1. Wat zijn loops en voorwaarden?
    2. §2. Het if-else statement
    3. §3. Vergelijkingen en hun operatoren
    4. §4. Functie confirm
    5. §5. Het switch-statement
    6. §6. De while-loop
    7. §7. De for-loop
    8. §8. Stoppen door break
    9. §9. Opdrachten
  7. Geeft paragrafen weer H7 - Events
    1. §1. Wat is een event?
    2. §2. Events maken en gebruiken
    3. §3. Welke events zijn er?
    4. §4. Variabele this
    5. §5. Variabele window.event
    6. §6. Opdrachten
  8. Geeft paragrafen weer H8 - Array
    1. §1. Wat is een Array?
    2. §2. Een Array maken en gebruiken
    3. §3. Een Array doorlopen
    4. §4. Een associatieve array
    5. §5. De for-in loop
    6. §6. Opdrachten
  9. Geeft paragrafen weer H9 - Objecten
    1. §1. Wat is een object?
    2. §2. Verschil object en variabele
    3. §3. Eigenschappen
    4. §4. Methodes
    5. §5. Eigenschappen en methodes
    6. §6. Opdrachten
  10. Geeft paragrafen weer H10 - Globale objecten
    1. §1. Wat zijn globale objecten?
    2. §2. Het window object
    3. §3. Het document object
    4. §4. Het Math object
    5. §5. Standaard HTML-Element object
    6. §6. Een HTML-Table object
    7. §7. Opdrachten

Hoofdstuk 7 - Opdracht 4

De opdracht:

Maak 5 divs met dezelfde tekst waarvan je door te klikken de opmaak als volgt kan veranderen:
als je gewoon op een div klikt, wordt deze vetgedrukt.
Door op een vetgedrukte div te klikken, terwijl je shift ingedrukt houdt moet deze weer gewoon worden.
De tekst in de div maakt niet uit (tip: geef de divs een achtergrondkleur, zo kun je zien wanneer je er op klikt of niet).

Let op: alleen de opmaak van de div waarop geklikt wordt mag veranderen, ze veranderen dus los van elkaar. De functie document.getElementById() mag alleen bij het toekennen van de events gebruikt worden.

Het antwoord:

Je zult nu dus gebruik van this en window.event moeten maken.

JavaScript:
  1. function changeStyle(event)
  2. {
  3. if(window.event)
  4. {
  5. event = window.event;
  6. }
  7.  
  8. if(event.shiftKey)
  9. {
  10. this.innerHTML = "Lorum ipsum";
  11. }
  12. else
  13. {
  14. this.innerHTML = "<b>Lorum ipsum</b>";
  15. }
  16. }
  17. function maakEvents()
  18. {
  19. for(var i = 1; i <= 5; ++i)
  20. {
  21. document.getElementById("div"+i).onclick = changeStyle;
  22. }
  23. }
  24. window.onload = maakEvents;

HTML:
  1. <div style="background:#eee;" id="div1">Lorum ipsum</div>
  2. <div style="background:#eee;" id="div2">Lorum ipsum</div>
  3. <div style="background:#eee;" id="div3">Lorum ipsum</div>
  4. <div style="background:#eee;" id="div4">Lorum ipsum</div>
  5. <div style="background:#eee;" id="div5">Lorum ipsum</div>