Start · Sprachen · JavaScript · Referenz · Document.vlinkColor

Document.vlinkColor

Eigenschaft

Liest oder setzt die Farbe besuchter Links im Dokument; entspricht dem veralteten HTML-Attribut <code>vlink</code> des <code>&lt;body&gt;</code>-Elements.

seit JavaScript Veraltet (deprecated) – aus Kompatibilitätsgründen deprecated seit ja Kategorie: webapi

Signatur

Document.vlinkColor

Beschreibung

document.vlinkColor ist eine veraltete Eigenschaft, mit der man die Farbe von besuchten Links im gesamten Dokument lesen und setzen kann. Sie spiegelt das ebenfalls veraltete Attribut vlink des <body>-Elements wider. Wer die Eigenschaft setzt, ändert also in Wirklichkeit document.body.vLink bzw. das Attribut vlink.

Der Wert ist eine Zeichenkette mit einer Farbangabe, etwa ein Farbname ("purple") oder ein Hex-Wert ("#551a8b"). Ist kein vlink-Attribut gesetzt, liefert die Eigenschaft einen leeren String. Existiert kein <body> (z. B. bei einem Frameset-Dokument oder während sehr frühem Parsen), hat das Setzen keine Wirkung.

Die Eigenschaft stammt aus der Frühzeit des Webs und ist heute nur noch für die Pflege von Altcode relevant. In neuem Code verwendet man stattdessen CSS mit der Pseudoklasse :visited, z. B. a:visited { color: purple; }, oder setzt eine CSS-Custom-Property per JavaScript.

Parameter

Name Typ Default Beschreibung
$value string "" Beim Setzen: eine Farbangabe als String, z. B. "purple" oder "#551a8b". Wird in das Attribut vlink von <body> geschrieben.

Rückgabewert

Typ
string
Beschreibung
Die aktuelle Farbe besuchter Links, wie sie im vlink-Attribut des <body> steht, bzw. ein leerer String, wenn keine gesetzt ist.

Beispiele

Farbe besuchter Links lesen und setzen

// Aktuellen Wert auslesen (leer, wenn kein vlink-Attribut existiert)
console.log(JSON.stringify(document.vlinkColor));

// Besuchte Links violett einfärben (veraltete Methode)
document.vlinkColor = '#551a8b';

console.log(document.vlinkColor);
console.log(document.body.getAttribute('vlink'));
"" #551a8b #551a8b

Zusammenhang mit body.vLink zeigen

document.body.vLink = 'purple';
console.log(document.vlinkColor); // spiegelt das body-Attribut wider

document.vlinkColor = 'green';
console.log(document.body.vLink);
purple green

Moderne Alternative: CSS :visited mit Custom Property

// Einmalig eine Regel anlegen, die eine CSS-Variable nutzt
const style = document.createElement('style');
style.textContent = 'a:visited { color: var(--visited-color, #551a8b); }';
document.head.append(style);

// Farbe später per JavaScript umschalten, z. B. für ein Dark-Theme
const setVisitedColor = (color) =>
  document.documentElement.style.setProperty('--visited-color', color);

setVisitedColor('#c58af9');
console.log(getComputedStyle(document.documentElement).getPropertyValue('--visited-color'));
#c58af9

// Wichtig · Fallstricke

  • Veraltet: Die Eigenschaft ist im HTML-Standard nur noch als obsolet aufgeführt. Für neuen Code CSS (a:visited) verwenden.
  • CSS hat Vorrang: Das vlink-Attribut wirkt wie ein Präsentationshinweis mit sehr niedriger Spezifität. Jede CSS-Regel für a:visited oder a überschreibt es.
  • Datenschutz: Browser schränken Stile für :visited ein und liefern über getComputedStyle() stets die Farbe eines unbesuchten Links. So lässt sich der Verlauf nicht auslesen. Der Wert von vlinkColor verrät daher nichts darüber, ob ein Link tatsächlich besucht wurde.
  • Ohne <body> (z. B. bei <frameset>) wird das Setzen ignoriert, und das Lesen liefert "".
  • Der Wert wird nicht geprüft oder normalisiert: Der Rückgabewert ist genau der gesetzte String, ungültige Farben eingeschlossen.
  • Browser-Kompatibilität: Aus Gründen der Abwärtskompatibilität noch in Chrome, Firefox, Safari und Edge vorhanden, sollte aber nicht mehr verwendet werden.