Javascript Event Handler

Die Ausgangslage: Mit JavaScript aktuell in den Content geschriebene Bilder, über denen bei Mouseover ein Tooltip angezeigt werden sollte.

Das Problem: Erzeuge ich ein Element mit document.createElement, kann ich diesem zwar mit onmouseover eine Funktion zuweisen, kann dieser Funktion aber keine Parameter mitgeben (man kann theoretisch schon, ist aber nicht zu empfehlen).

Die Lösung:

– im IE gibts ein globales Objekt „event“
– im Firefox wird einer funktion automatisch der event e mitgegeben.
– die unterscheidung macht man zum Beispiel über if(document.all)

if(document.all) //IE
{
  e=event;
}
else //FF
{
  ;
}

– wenn man der funktion keine weiteren Parameter mitgeben kann, kann man die ID des auslösenden Elements abfragen
– im IE über e.srcElement.id
– im FF über e.target.id

if(document.all) //IE
{
  e=event;
  bild_id = e.srcElement.id;
}
else //FF
{
  bild_id = e.target.id;
}

Ausprogrammiert und noch etwas genauer erklärt gibt’s das hier.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.