Versionen dieses Beitrags

Css Element per JS einsetzen

Gb 80x80 Gunnar Bittersmann
  • Css Element per JS einsetzen
  • @@Pit
  • > ~~~JavaScript, bad
  • > var myCA = document.createElement("canvas");
  • > myCA.setAttribute("id", "myCanvas");
  • > parent.appendChild(myCA);
  • >
  • > var canvas = document.getElementById("myCanvas");
  • > ~~~
  • Das ist [Unsinn](https://forum.selfhtml.org/cites/2280).
  • Mit `myCA` hast du bereits die Nadel (die Referenz auf das Element) in der Hand; es ist unsinnig, dasselbe Element nochmal im Heuhaufen (DOM) zu suchen.
  • > Hier generiere ich ein Canvaselement, in das ich eine Linie einfügen möchte.
  • >
  • > ~~~JavaScript
  • > var Line = document.createElement('hr');
  • > canvas.appendChild(Line);
  • > ~~~
  • >
  • > Aber die Linie wird nicht generiert.
  • >
  • > Was mache ich faksch?
  • `hr` ist keine Linie. `hr` ist ein thematischer Bruch (welcher desöfteren als Linie visialisiert wird).
  • `hr` ist keine Linie. `hr` ist ein thematischer Bruch (welcher desöfteren als Linie visialisiert wird). [[Spec](https://w3c.github.io/html/grouping-content.html#the-hr-element)]
  • `canvas` ist eine Zeichenfläche. `canvas` ist nicht dafür gedacht, andere HTML-Elemente zu enthalten, die dargestellt werden sollen – außer als Fallback in Browsern, die `canvas` nicht unterstützen.
  • LLAP 🖖
  • --
  • *„Wer durch Wissen und Erfahrung der Klügere ist, der sollte nicht nachgeben. Und nicht aufgeben.“* —Kurt Weidemann