Sven: Event.pointerX is not a function

Hallo,

ich lese mit der prototype-Funktion Event.pointerX und Event.pointerY die Mauskoordinaten aus und rechne sie in geographische Koordinaten um. Beim Laden der Datei wird der Event gestartet:

Event.observe($('imgId'), 'mousemove', showCoords);

hier die aufgerufene Funktion:

//Koordinaten anzeigen
function showCoords(event) {
 //Bildkoordinaten in Gauss umrechnen
 var mousex = Event.pointerX(event)-xoffset;
 var mousey = Event.pointerY(event)-yoffset;
 var Gx = x1 + ((mousex *  (x2 - x1 )) / mapWidth);
 var Gy = y2 - ((mousey *  (y2 - y1 )) / mapHeight);
 //Gausskoordinaten in Form anzeigen
 $("rwId").value = Math.round(Gx);
 $("hwId").value = Math.round(Gy);
 //Bildkoordinaten in Form anzeigen
 $("xId").value = mousex;
 $("yId").value = mousey;
}

Manchmal (ich kann dabei kein Schema erkennen) kommt es bei Firefox in der Konsole zu folgender Fehlermeldung wenn ich mit die Maus bewege:

Event.pointerX is not a function
[Break on this error] var mousex = Event.pointerX(event)-xoffset;

Ich kann leider nicht feststellen warum dies geschieht, es macht der Anwendung auch nix aus (Firefox läuft weiter, die Koordinaten werden angezeigt,im IE kommt keine Fehlermeldung), aber ich will keine Fehlermeldungen im Firefox...

Gruß
Sven

  1. var mousex = Event.pointerX(event)-xoffset;
    var mousey = Event.pointerY(event)-yoffset;

    Event.pointerX is not a function

    Event ist die Klasse.

    event ist das Objekt. (Beachte Groß- und Kleinschreibung!)

    pointerX und pointerY sind Attribute.

    Was Du hier versuchst, ist die Klassenmethode pointerX() bzw. pointerY() der Klasse Event aufzurufen. (Beachte An- und Abwesenheit von Klammern!)

    Möchtest Du vielleicht die Attribute pointerX und pointerY des Objektes event benutzen? Da wäre die Syntax objekt.attribut nötig, nicht Klasse.methode(objekt).

    Alexander