Hallo Leute,
wieder einmal ein Problem der unterschiedlichen Arbeitsweise des MS-Internet-Explorers (IE) und Firefox.
Ausgangslage:
- ich habe eine Website mit Grafiken, die jeweils verschiedene IDs haben
- wenn ich auf eine Grafik klicke, möchte ich in Javascript feststellen, wie die ID des Objekts lautet, das ich angeklickt habe
- Komischerweise gelingt es mir im Firefox nicht, die ID des Objekts, das einen Event auslöst, festzustellen (gilt auch für andere Parameter des HTML-Tags, z.B. name, class usw)!
Einige Dinge habe ich schon mit selfhtml + Beispielprogrammen aus dem Internet herausgefunden:
Lösung im IE:
Anhand von Beispielprogrammen konnte ich feststellen, daß das Objekt "window.event" das Unterobjekt "srcElement" hat (in selfhtml überigens nicht dokumentiert, richtig?) und hier die Eigenschaft "id" abrufbar ist. Also: "window.event.srcElement.id" liefert problemlos das gewünschte Ergebnis.
ABER:
Lösung im Firefox:
In einem Script setze ich für das Ereignis "onclick" einen Event-Handler mit einem Parameter, z.B. "document.getElementsByName("Bild1")[0].onclick = EventAktion". Die zugehörige Funktion lautet dann "function EventAktion(e){...}". Der Parameter e überträgt auch korrekt das angeklickte Grafikobjekt in das Programm (nur im Firefox, nicht im IE!). So kann ich z.B. die Position des Mausklicks auf der Grafik mit "PosX = e.layerX" abfragen. Auch Breite und Höhe usw. sind kein Problem. Nur die ID kann ich komischerweise nicht abfragen! "e.id" funktioniert nicht: "alert(e.id)" liefert "undefined"! Wie bekomme ich die ID der Grafik heraus? Im Firefox gibt es das Unterobjekt "srcElement" nicht, ebensowenig wie das Objekt "window.event" ("alert(e.srcElement)" liefert "undefined"). Gibt es für den Firefox etwas Vergleichbares?
Vielen Dank im Voraus für die Hilfe,
Reinhard