Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
de:modul:m288:learningunits:lu01:02 [2025/08/29 11:16] – [1. Inline im HTML-Tag] vdemirde:modul:m288:learningunits:lu01:02 [2025/08/29 11:44] (aktuell) – [1. Inline im HTML-Tag] vdemir
Zeile 7: Zeile 7:
   - Intern im <script>-Tag   - Intern im <script>-Tag
   - Extern in einer separaten .js-Datei   - Extern in einer separaten .js-Datei
-  - Mit defer und async  
  
 ===== 1. Inline im HTML-Tag===== ===== 1. Inline im HTML-Tag=====
 Der JavaScript-Code wird direkt als Attribut in einem Element reingeschrieben. 👉 Das ist nicht die eleganteste Lösung, aber für schnelle Tests praktisch. Der JavaScript-Code wird direkt als Attribut in einem Element reingeschrieben. 👉 Das ist nicht die eleganteste Lösung, aber für schnelle Tests praktisch.
  
 +**HTML-Datei**
   <!DOCTYPE html>   <!DOCTYPE html>
   <html>   <html>
     <head>     <head>
-      <title>Inline JavaScript</title>+      <title>Beispiel</title>
     </head>     </head>
     <body>     <body>
-    <!-- JavaScript-Code mit einer-alert-box wird ausgegeben, wenn auf Button geklickt -->  +      <p onclick="document.body.style.backgroundColor = 'lightblue';"> 
-    <!-- Bitte Browser wie Chrom, Firefox, .... verwenden zum Testen. --> +        Klick mich, um den Hintergrund blau zu machen! 
-    <button onclick="alert('Hallo, Welt!')">Button für Alert Box</button>+      </p>
     </body>     </body>
   </html>   </html>
-   
  
  
Zeile 29: Zeile 28:
 JavaScript wird direkt im HTML-Dokument, meist im <head> oder besser am Ende von <body> platziert, damit das DOM schon geladen ist. JavaScript wird direkt im HTML-Dokument, meist im <head> oder besser am Ende von <body> platziert, damit das DOM schon geladen ist.
  
 +**HTML-Datei**
   <!DOCTYPE html>   <!DOCTYPE html>
   <html>   <html>
Zeile 36: Zeile 36:
     <body>     <body>
       <h1>Beispiel mit Script-Tag</h1>       <h1>Beispiel mit Script-Tag</h1>
 +      <h3>Beim Laden der Seite  wird die Hintergrundfarbe auf "lightblue" geändert.</h3>
       <!-- JS-Code-Bereich wird irgendwo definiert, hier direkt dort wo es gebraucht wird, und gleich ausgefüllt.       <!-- JS-Code-Bereich wird irgendwo definiert, hier direkt dort wo es gebraucht wird, und gleich ausgefüllt.
-           In diesem Falle wird einfach Hintergrundfarbe mittels JS verändert--->+           In diesem Falle wird einfach Hintergrundfarbe mittels JS verändert --->
       <script>       <script>
         document.body.style.backgroundColor = "lightblue";         document.body.style.backgroundColor = "lightblue";
Zeile 45: Zeile 46:
  
  
-===== 3. Extern in einer separaten .js-Datei =====+===== 3. Extern in einer separaten js-Datei =====
 Dieser Ansatz ist der saubere Standardweg: Gemäss der Maxime //Teile und herrsche// wird HTML und JS in separaten Dateien gehalten. So bleibt der HTML-Code übersichtlich und JavaScript kann wiederverwendet werden. Dieser Ansatz ist der saubere Standardweg: Gemäss der Maxime //Teile und herrsche// wird HTML und JS in separaten Dateien gehalten. So bleibt der HTML-Code übersichtlich und JavaScript kann wiederverwendet werden.
  
Zeile 53: Zeile 54:
     <head>     <head>
       <title>Externes Script</title>       <title>Externes Script</title>
-      <script src="script.js" defer></script> 
     </head>     </head>
     <body>     <body>
       <h1>Externes JavaScript</h1>       <h1>Externes JavaScript</h1>
 +      <h3>Hintergrundfarbe wird auf "lightblue" geändert</h3>
 +      <!-- JS-Code wird direkt aus der Datei geholt und im body verarbeitet -->
 +      <script src="scripts/script.js" ></script>
     </body>     </body>
   </html>   </html>
      
 **Script.js** **Script.js**
-  document.addEventListener("DOMContentLoaded", () => { +    document.body.style.backgroundColor = "lightblue";
-    console.log("Externes Script wurde geladen!"); +
-    alert("Hallo aus script.js!"); +
-    } +
-  ); +
- +
-===== 4. Mit defer und async ===== +
- +
-  * **defer**: Script wird nach dem Laden des HTML ausgeführt (Reihenfolge bleibt erhalten). +
-  * **async:** Script wird parallel geladen und sobald fertig, sofort ausgeführt (Reihenfolge nicht garantiert). +
-   +
-  <!DOCTYPE html> +
-  <html> +
-    <head> +
-      <title>Async & Defer</title> +
-      <script src="defer-script.jsdefer></script> +
-      <script src="async-script.js" async></script> +
-    </head> +
-    <body> +
-      <h1>Async vs. Defer</h1> +
-    </body> +
-  </html> +
 ===== Zusatzmaterial ===== ===== Zusatzmaterial =====
   * [[https://www.w3schools.com/js/js_whereto.asp|W3School-Where_to_bind]]   * [[https://www.w3schools.com/js/js_whereto.asp|W3School-Where_to_bind]]
  • de/modul/m288/learningunits/lu01/02.1756458977.txt.gz
  • Zuletzt geändert: 2025/08/29 11:16
  • von vdemir