Arx: Problem mit Rahmenfarbe von Div ändern

Beitrag lesen

Привет, Enrico!

Ich bette Eingabefelder von Formularen zur pixelgenauen Positionierung in DIV-Bereiche ein:

Warum? (Fast) jedes HTML-Element lässt sich positionieren, wobei eine relative Positionierung in der Regel besser ist als eine pixelgenaue.

Der umgebende DIV-Container beinhaltet die Hintergrundgrafik der Formulare.

Warum weist du den Hintergrund nicht dem form-Element zu?

Um den Focus auf ein Eingabefeld optisch verhorzuheben, will ich die Rahmenfarbe des umgebenden DIV-Bereiches ("Eingabefeld_1") ändern:

Du kannst auch die Rahmenfarbe des Eingabefeldes ändern.

<div id="Eingabefeld_1">
  <input
    class="Eingabefeld"
    name="Name"
    onfocus="Rahmenfarbe ('Eingabefeld_1', 'an');"
    onblur="Rahmenfarbe ('Eingabefeld_1', 'aus');">

Warum maskierst du die Anführungszeichen innerhalb der JavaScript-Anweisungen?

</div>

Das zugehörige JS-Script sieht folgendermassen aus:

function Rahmenfarbe (ID, Modus)
{
  var Farbe = "";

if (Modus == "an")
    Farbe = "000000";

So geht's: Farbe="#000000";
                  ^

else
    Farbe = "ffffff";

Siehe oben.

if (document.all)
    eval ('document.all.' + ID + '.style.borderColor="' + Farbe + '"');

Warum so kompliziert?

document.all[ID].style.borderColor=Farbe;

if (document.layers)
    eval ('document.layers.' + ID + '.borderColor="' + Farbe + '"');

Siehe oben.

document.layers[ID].borderColor=Farbe;

}

Und warum verwendest du überhaupt document.all und document.layers und nicht stattdessen DOM-konformes JavaScript?

Mein Problem ist nun, dass sich die Rahmenfarbe aber nicht ändert, ich erhalte aber auch keine Fehlermeldung.

Du solltest aber doch eine JavaScript-Konsole haben.

Пока!
Sven aus Bonn

--
Do it yourSELF 'cause SELFmade is bestmade.
Selfcode: ie:% fl:( br:^ va:} ls:[ fo:) rl:( n4:{ ss:| de:> js:| ch:? mo:} zu:)
Selfcode dekodieren - Selfcode-Info