Ehrhard Heimert: Anker-Formatierung mit JavaScript ändern

Hallo Spezialisten,
ich habe wichtige Gründe, auf die Formateigenschaften von Ankern mittels JavaScript zu zugreifen.
In meinem Fall befinden sich in mehreren <div></dif> viele Anker, deren Schriftgröße in Abhängigkeit von verschiedenen Bedingungen geändert werden soll. Zentrale CSS-Datei scheidet also aus.
Da jeweils für einen div-Bereich die gleichen Formatierungen gelten und die Anzahl der Anker sehr groß ist, möchte ich in JavaScript auf die Formatierung der Anker im jeweiligen Bereich  zugreifen. Alle meine Versuche, mittels document.getElementById('id des Div').style funktionieren nicht.
Kann mir bitte Jemand auf die gedanklichen Sprünge helfen?

  1. Hallo,

    [...] <div></dif> [...]

    ^
    Du meinst wahrscheinlich </div>.

    Da jeweils für einen div-Bereich die gleichen Formatierungen gelten und die Anzahl der Anker sehr groß ist, möchte ich in JavaScript auf die Formatierung der Anker im jeweiligen Bereich  zugreifen. Alle meine Versuche, mittels document.getElementById('id des Div').style funktionieren nicht.

    Wenn du den style des umliegenden div änderst, änderst du damit immer noch nicht den style des a-Elements. Wenn also beispielsweise allgemeine Styleangaben notiert sind, die sich auf jedes a-Element beziehen, sind diese davon unberührt. Versuch's mal so:

    for (i=0; i<document.getElementById('id des Div').childNodes.length; i++)
      if (document.getElementById('id des Div').childNodes[i].nodeType == 1)
        with (document.getElementById('id des Div').childNodes[i].style) {
          styleEigenschaft = "Eigenschaftswert";
          styleEigenschaft2 = "Eigenschaftswert2";
        }

    Damit werden die style-Eigenschaften aller Elementknoten gesetzt, die sich innerhalb des divs befinden.

    Robert

    1. Hallo Robert,

      Danke für den Tip! Warum nur bin ich nur nicht selber drauf gekommen?
      Aber so ist das manchmal: Man ist in einen Gedankenweg so verbissen, dass man das Umfeld nicht mehr sieht. Gut, das es dieses Forum gibt und Leute, die sich helfen.
      Jetzt klappt alles, nochmals Dankeschön!
      Ehrhard