Andreas: Firefox-Problem / window.event

Hola,

dieses Javascript will und will einfach nicht im Firefox (aktuelle Version) funktionieren:

function movewindow(e){
    e = window.event;

if(bMoving){
        if (document.getElementById) {
            document.getElementById("nav").style.left = e.clientX-"px";
            document.getElementById("nav").style.top  = e.clientY+"px";
        }
        else if (document.all) {
            document.all.nav.style.left = e.clientX;
            document.all.nav.style.top = e.clientY;
        }
    }
}

das wird über ein einfaches
document.onmousemove = movewindow; verknüpft.

Es funktionier im Firefox einfach nicht.. hab mir extra nochmal das Beispiel von selfhtml angesehen them window.event und div's verschieben, exakt der selbe code. Der funktionier auch hmm.

Mein Div rührt sich jedenfalls keinen milimeter, jemand eine Idee?

  1. dieses Javascript will und will einfach nicht im Firefox (aktuelle Version) funktionieren:
    function movewindow(e){
        e = window.event;

    Kein Wunder, du überschreibst hier e mit der Referenz auf eine im FF nicht existente Methode. Richtig wäre:

    if (!e) e = window.event;

    Es funktionier im Firefox einfach nicht.. hab mir extra nochmal das Beispiel von selfhtml angesehen them window.event und div's verschieben, exakt der selbe code. Der funktionier auch hmm.

    Dass der Code funktioniert, glaube ich dir, dass du den Code 1:1 übernommen hast, glaube ich dir nicht :)

    Siechfred

    --
    [NaN]
  2. Yerf!

    Es funktionier im Firefox einfach nicht.. hab mir extra nochmal das Beispiel von selfhtml angesehen them window.event und div's verschieben, exakt der selbe code.

    Sicher? Ich sehe in den Beispielen folgendes:

    if (!Ereignis)
        Ereignis = window.event;

    Wo ist bei dir die Abfrage, ob e nicht schon etwas enthält? (der Firefox kennt window.event nicht, da steht schon alles im übergebenen Parameter, der bei dir wieder überschrieben wird)

    Gruß,

    Harlequin

  3. Hi,

    dieses Javascript will und will einfach nicht im Firefox (aktuelle Version) funktionieren:

    es ist ein erheblicher konzeptioneller Bug im IE, ein zu einem Ereignis gehörendes Objekt in einer globalen(!) Variable abzulegen. Du rechnest hier damit, dass andere Browser den selben Bug besitzen. Dieses Vorgehen erweist sich nur selten als weise.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
  4. Hi,

    zusätzlich zum gesagten:

    document.getElementById("nav").style.left = e.clientX-"px";

    Was ist die Differenz aus einer Zahl (e.clientX) und dem String "px"?

    cu,
    Andreas

    --
    Warum nennt sich Andreas hier MudGuard?
    O o ostern ...
    Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.