Bestimmte Zeile in HTML per JavaScript ändern?

4 Antworten

Gib dem <link> Element, sowie deinem A-Element jeweils eine ID

<link id="stylesheet" ...>
<a href="#" id="switch">Darkmode</a>

Jetzt kannst du per JavaScript das href-Attribut verändern:

document.getElementById("switch").addEventListener("click", function() {
  document.getElementById("stylesheet").setAttribute("href", "darkmode.css");
});

falscherSamu 
Beitragsersteller
 25.02.2020, 23:15

Im Nachhinein, nach etwas mehr als 25 Tagen, finde ich diese Frage von mir einfach nur schwachsinnig und irreführend, aber danke für deine Antwort, hilft wahrscheinlich einigen hier!

Dory1  26.02.2020, 19:00
@falscherSamu

Was findest du denn daran schwachsinnig? Ist doch legitim...

falscherSamu 
Beitragsersteller
 27.02.2020, 18:45
@Dory1

Ja, aber ich wollte einen Darkmode verwenden - dafür gibt es viele Lösungen online, jedoch war ich zu der Zeit noch zu blöd, um das Tutorial zu verstehen...

Das mag für dich als einfache Lösung erscheinen, ist aber nicht sicher umsetzbar. Meine Empfehlung wäre, dass Du in der Style-Datei bereits alle Styleangaben hinterlegst und per Klick lediglich dem body eine Klasse gibst die den Style umschaltet. So musst Du auch nicht mehrere Style-Dateien parallel bearbeiten, was ein Nachteil deiner Lösung wäre.

Woher ich das weiß:Berufserfahrung

Darf ich auch den Grund erfahren um es nachvollziehen zu können?

Ich verstehe die Frage nicht so. Du verlinkts eine Style CSS Datei und willst sie mit einer <a><li></li></a> ändern aber was für ein Sinn hat das?

Woher ich das weiß:Hobby – Viele YouTube Tutorials