Image Area
Ron
- javascript
Hallo,
habe eine Frage:
Ist es möglich mir Javascript das onclick-event einer ImageArea zu verändern??
Beipsiel:
<!-- ImageArea -->
<map name="quizImage" id="Area">
<area alt="" coords="365,1,451,27" href="#" onclick="showHighlight(0);showResult(1, 3)" id="Area0">
<area alt="" coords="0,0,364,244" href="#" onclick="showHighlight(1);showResult(0, 3)" id="Area1">
<area alt="" coords="364,27,451,244" href="#" onclick="showHighlight(1);showResult(0, 3)" id="Area2">
</map>
<!-- ImageArea -->
<!-- JavaScript -->
document.getElementById("Area").document.getElementById("Area"+i).getElementsByTagName("a")[0].onclick = null;
<!-- JavaScript -->
Funcktioniert leider nicht. Erkennt jemand den Fehler oder hat vielleicht eine bessere Lösung?
Vielen Dank
Ron
gruss Ron
"HTMLAreaElement"-objekte werden auch ueber
die "document.links"-collection referenziert.
so long - peterS. - pseliger@gmx.net
Hallo,
document.getElementById("Area").document.getElementById("Area"+i).getElementsByTagName("a")[0]
Wie kommst du denn darauf, was stellst du dir unter dieser Logik vor?
Erst einmal document.getElementById("Area"), ok. Das liefert dir den map-Elementknoten. Mit dem willst du aber doch nichts anfangen. Du willst das area-Element mit id="AreaX". Also nimmst du direkt document.getElementById("Area" + i). Damit hast du den area-Elementknoten. document.getElementById("Area" + i).onclick wäre dann das die Eigenschaft, die du ansprechen willst. Voilà, so einfach ist es. Wie kommst du aber auf die Doppelung von getElementById und dann noch auf getElementsByTagName("a")?
Willst du alle area-Elemente durchlaufen? Dann ist getElementsByTagName("area") natürlich angebracht, das liefert dir eine Elementliste, die du z.B. mit einer for-Schleife durchlaufen kannst.
.onclick = null ist schon ganz richtig.
Mathias