molily: Mauskoordinaten die nte

Beitrag lesen

Hallo,

function showSubnote()

function showSubnote (e)

Im Internet Explorer greift man über window.event auf das Eventobjekt zu, in anderen Browsern wird es der Handler-Funktion als erster Parameter übergeben, aber nur dann, wenn der Handler per JavaScript (element.onevent = handler;) registriert wurde.

{
var divSubnote  = document.createElement('div');
divSubnote.id   = sn_subnoteID;

var e   = window.event;

Dann gleicht man die Variable e in beiden Browsern so an:

e = e || window.event;

oder

if (!e)
   e = window.event;

Offenbar ist es auch möglich, den Parameter »event« zu nennen, ein Zugriff auf event ergibt dann im Firefox und Co. die lokale Variable, im IE halt window.event (ungetestet).

<div onMouseOver="showSubnote();" id="testDiv">

Wenn du allerdings mit solchen Event-Handler-Attributen arbeitest, dann kannst du nur über window.event auf das Eventobjekt zugreifen, was nur im IE möglich ist. Aber innerhalb des Attributs kannst du in allen Browsern über »event« auf das Eventobjekt zugreifen. Dieses kannst du dann deiner Funktion übergeben:

<div onMouseOver="showSubnote(event);" id="testDiv">

In einem solchen Fall fällt die obige Angleichung weg.

Mathias