Guma: >> AJAX >> Mausposition an PHP übergeben

Hallo zusammen, ich habe vor die aktuelle Mausposition auf einer z.B. passwortgeschützten Webseite beim Bedienen zu übergeben. d.h. wenn der Präsentationsleiter die Maus bewegt, sollen die aktuellen Koordinaten per AJAx an PHP übermittelt werden. PHP überscheibt den alten Wert und zeigt beim Betrachter die aktuelle mausposition mitb einem Kreuz an. Das Feld indem sich der Mauszeiger bewegt ist ein IFRAME und fest definiert.

Jetzt die Fragen:

Kann ich die X-Y Koordinaten bezüglich des IFRAMES per JAVASCRipt abfragen, oder nur bezüglich des Bildschirms?

Damit das recht flüssig aussieht muss AJAX pro Sekunde ein requrest liefern. Das kostet ganz schön TraffiK. Wie würdet ihr sowas angehen. Gibt es per Flash da eine Lösung oder soll ich bei Ajax bleiben?

Wenn das irgendwie geht versuche ich dann noch den Zeiger per Prototype von der alten Position auf die neue Position vektortechnisch zulaufen zu lassen, so entstehen keine ruppigen aussetzer sondern schöne Bewegungen.

Hat jemand sowas schon mal gemacht oder Erfahrung damit.

lasst es mich wissen, Guma

  1. Hier noch mein Ansatz fürs Javascript:

    // JavaScript Document

    myframe.document.onmousemove = function(e) {
    if(!e) e = window.event;
    if(e.pageX){
    xPos = e.pageX;
    yPos = e.pageY;
    } else if(e.clientX) {
    xPos = e.clientX;
    yPos = e.clientY;
    }
    // hier soll später per AJAX an PHP übergeben werden
    alert(xPos);
    }

  2. Hi,

    Kann ich die X-Y Koordinaten bezüglich des IFRAMES per JAVASCRipt abfragen, oder nur bezüglich des Bildschirms?

    ppk sagt: As to the mouse position, the situation is horrible.

    Wenn die sich nicht in Bezug auf den Iframe, sondern nur auf's Hauptfenster abfragen lassen sollte (obwohl ein Iframe ja auch eine window-Instanz darstellt) - dann muesstest du halt die Iframe-Position kurzerhand rausrechnen.

    Damit das recht flüssig aussieht muss AJAX pro Sekunde ein requrest liefern. Das kostet ganz schön TraffiK. Wie würdet ihr sowas angehen.

    Gar nicht :-)

    Es erscheint mir irgendwie wenig sinnvoll, dass mit den vorhandenen Techniken im Web-Umfeld umsetzen zu wollen.

    Gibt es per Flash da eine Lösung oder soll ich bei Ajax bleiben?

    Der Flaschenhals hoert eindeutig auf den Namen HTTP - bei Verwendung dieses Protokolls kann also auch Flash keine Wunder bewirken.
    Ob Flash andere Protkolle unterstuetzt (und dein Server ebenfalls), die ggf. "schneller" waeren, weiss ich nicht.

    MfG ChrisB

  3. Hallo,

    wenn der Präsentationsleiter die Maus bewegt, sollen die aktuellen Koordinaten per AJAx an PHP übermittelt werden. PHP überscheibt den alten Wert und zeigt beim Betrachter die aktuelle mausposition mitb einem Kreuz an. Das Feld indem sich der Mauszeiger bewegt ist ein IFRAME und fest definiert.

    Das wirst du NIE performant hinbekommen. Du musst ja nicht nur die Mausposition in Echtzeit zum Server übertragen, sondern diese Position in Echtzeit auf alle Clients übertragen. Wenn du jede Sekunde einen Request machen würdest, würde der Server vermutlich saulahm antworten.
    Das kannst du vielleicht in Flash mit echten Sockets machen. (Frag jemanden, der sich damit auskennt. Ich bin eine Flash-Null, weiß aber, dass das geht.)

    Damit das recht flüssig aussieht muss AJAX pro Sekunde ein requrest liefern. Das kostet ganz schön TraffiK. Wie würdet ihr sowas angehen.

    Wie gesagt, gar nicht.

    Wenn das irgendwie geht versuche ich dann noch den Zeiger per Prototype von der alten Position auf die neue Position vektortechnisch zulaufen zu lassen

    Argh. Sorry, aber da bist du völlig auf dem falschen Dampfer, dafür sind HTTP, HTML und JavaScript absolut ungeeignet.

    Mathias