Justus: usemap ändern bei onClick-Event

Hallo die Damen und Herren!

Ich zermartere mir gerade den Kopf über folgendes Problem.
Ich möchte gerne bei einem onClick-Event auf Image A das sich das Usemap für Image B ändert. Mit den Sources war es kein Problem. Ich dachte ich könnte das 1:1 für die Usemaps machen, habe mich aber anscheinend geirrt.

Folgendes habe ich bisher erstellt:
-   -   -   -   -   -   -   -   -   -   -   -   -   -   -   -   -
<!--AREAS heißt "test1"-->
<map name="test1">
  <area shape="rect" coords="1,1,456,456" href="http://eins.test.de" target="_blank" title="http://eins.test.de" alt="http://eins.test.de">
</map>

<!--Image A-->
<img src="../../buttons/io_nofocus.jpg" id="io01"
onclick="
src = '../../buttons/io_focus.jpg'
img.src = 'i01.jpg'
img.usemap = '#test1'"

<!--Image B-->
<img src="../../buttons/spaceholderimage.jpg" id="img" onClick="javascript:top.location.href='http://www.domain.de'" usemap="#none" border="0">
-   -   -   -   -   -   -   -   -   -   -   -   -   -   -   -   -

Hoffe, die SelfHTML-Forum-Spezies können mir weiterhelfen!
Dankeschön!

Justus Bremer

  1. 1. Dem Attribut usemap entspricht im DOM die <http://de.selfhtml.org/javascript/objekte/htmlelemente.htm#img@title=Eigenschaft useMap> (Schreibweise beachten).

    2. Wenn du mehrere Anweisungen im onclick-Attribut unterbringen willst, solltest du sie mit einem ; trennen. Besser noch, du bringst sie in einer zentral definierten Funktion unter, die du im onclick-Attribut nur aufrufst. Ein weiterer Schritt wäre, das JavaScript und das HTML zu trennen und den Event-Handler auch im JavaScript zu registrieren.

    3. Attributwerte solltest du nicht über mehrere Zeilen reichen lassen, besser wäre onclick="anweisung; anweisung; anweisung;" in einer Zeile mit Semikola.

    4. Wenn du im onclick-Attribut auf das jeweilige Element zugreifen willst, solltest du ausdrücklich this.src statt nur src schreiben, um Mehrdeutigkeiten zu vermeiden. (Einfach src geht auch, ist aber unsauber.)

    5. Wenn du ein Element mit der ID »img« ansprechen willst, so verwende http://de.selfhtml.org/javascript/objekte/document.htm#get_element_by_id@title=document.getElementById. Deine Methode, einfach die globale Variable namens img anzusprechen und zu hoffen, dass darin das fragliche Element gespeichert ist, funktioniert nur in einigen Browsern unter bestimmten Umständen.

    Mathias