jghj: maus events abfangen firefox

hallo leute.
ich möchte mausevents abfangen. auf selfhtml hab ich gleich ein beispiel dazu gefunden: http://de.selfhtml.org/dhtml/modelle/anzeige/springer.htm
was auch mit dem firefox funktionieren sollte.
es aber nicht tut :-)

gibt es andere möglichkeiten beim firefox mausevents (auf ebenen) abzufangen?

danke im voraus

  1. moin jghj :)

    was auch mit dem firefox funktionieren sollte.

    stimmt - das steht da - tuts aber nicht. anscheindend kennen die Geckos das window.event-Objekt nicht.

    function handleClickEvent(e){
     var targ;
     !e? targ = window.event.srcElement: targ = e.target
    }
    mit dieser Funktion bestimme ich das Element, das den Event ausgelöst hat.
    Man könnte das natuerlich auch  abwandeln und das Event bestimmen

    function getEvent(e){
      var event;
      !e?event=window.event: e
    }

    liebe Grüße aus Berlin
    lina-

    --
    Self-Code: ie:% fl:( br:^ va:) ls:/ fo:| rl:( ss:) de:] js:| mo:)
    1. stimmt - das steht da - tuts aber nicht. anscheindend kennen die Geckos das window.event-Objekt nicht.

      Nicht nur anscheinend sonder sie kennen es nicht.

      function handleClickEvent(e){
      var targ;
      !e? targ = window.event.srcElement: targ = e.target
      }

      du solltest dich genauer mit der syntax der einfachen entweder oder Funktion beschäftigen (es geht so wie du es schreibst, aber es ist umständlicher).

      var targ = e ? e.target : window.event.srcElement;

      function getEvent(e){
        var event;
        !e?event=window.event: e
      }

      besser dann:

      var event = e ? e : window.event;

      oder

      if(!e) e = window.event;

      Struppi.

      1. moin Struppi :)

        du solltest dich genauer mit der syntax der einfachen entweder oder Funktion beschäftigen (es geht so wie du es schreibst, aber es ist umständlicher).

        hmm... hast recht. Irgendwie hab ich das umständlich formuliert. Danke für die Tipps :)
        .oO(ich sollte wirklich mal alle alten Gewohnheiten überprüfen und nachlesen ob ich das damals "richtig" gerlernt hab)

        liebe Grüße aus Berlin
        lina-

        --
        Self-Code: ie:% fl:( br:^ va:) ls:/ fo:| rl:( ss:) de:] js:| mo:)
      2. danke für die postings. aber ich hab jetzt die 2 funktionen. Und wie geht es weiter?
        Die werden ja denke ich nicht automatisch aufgerufen, entweder ich hab grad ein brett vorm Kopf oder ihr habt das nicht erwähnt :)

        1. moin jghj :)

          danke für die postings. aber ich hab jetzt die 2 funktionen. Und wie geht es weiter?
          Die werden ja denke ich nicht automatisch aufgerufen, entweder ich hab grad ein brett vorm Kopf oder ihr habt das nicht erwähnt :)

          ich werd ma in das Brett vor deinem Kopf ein Loch sägen ;)
          Struppi hat das quasi schon mitangegeben in seinem Beispiel zum eventhandling.
          Entweder kann man das in einer init-Methode angeben (wie im Beispiel) oder man macht es so wie ich und gibt es direkt in einem Element an:

          <p onclick="handleClickEvent"></p>
          (ohne Klammern!)

          liebe Grüße aus Berlin
          lina-

          --
          Self-Code: ie:% fl:( br:^ va:) ls:/ fo:| rl:( ss:) de:] js:| mo:)
          1. Entweder kann man das in einer init-Methode angeben (wie im Beispiel) oder man macht es so wie ich und gibt es direkt in einem Element an:

            <p onclick="handleClickEvent"></p>
            (ohne Klammern!)

            Tut mir leid das ich dich schon wieder korrigieren muss, im HTML Handler mit Klammer und Event:
            <p onclick="handleClickEvent(event)"></p>

            Struppi.

            1. moin Struppi :)

              Tut mir leid

              muss es nicht - ich bin mir ja durchaus bewusst, dass ich auch noch viele Fehler mache - und diese sehe ich gern korrigiert.

              das ich dich schon wieder korrigieren muss, im HTML Handler mit Klammer und Event:
              <p onclick="handleClickEvent(event)"></p>

              hmm? wars dann im Javascript ohne Klammern?
              Ich weiss noch dass ich irgendwann an dieser fiesen Falle (halt dass die Klammern weggelassen werden _müssen_) gescheitert bin...

              liebe Grüße aus Berlin
              lina-

              --
              Self-Code: ie:% fl:( br:^ va:) ls:/ fo:| rl:( ss:) de:] js:| mo:)
              1. das ich dich schon wieder korrigieren muss, im HTML Handler mit Klammer und Event:
                <p onclick="handleClickEvent(event)"></p>

                hmm? wars dann im Javascript ohne Klammern?
                Ich weiss noch dass ich irgendwann an dieser fiesen Falle (halt dass die Klammern weggelassen werden _müssen_) gescheitert bin...

                Mit Klammern wird die Funktion aufgerufen ohne Klammern hast du eine Referenz auf die Funktion. Ich hab das mal versucht zu erläutern http://jstruebig.de/web/javascript/exp/events.html

                In JS musst du dem Eventhandler die Referenz auf die Funktion, die im Falle des Events ausgeführt werden soll übergeben.
                Im HTML code wird die Funktion im Falle des Events ausgeführt.

                Struppi.

        2. danke für die postings. aber ich hab jetzt die 2 funktionen. Und wie geht es weiter?
          Die werden ja denke ich nicht automatisch aufgerufen, entweder ich hab grad ein brett vorm Kopf oder ihr habt das nicht erwähnt :)

          Die funktionen werden bei einem Event aufgerufen. Bis jetzt hast du ja noch nicht gesagt was du eigentlich willst. Sondern nur darauf hingewiesen das das Beispiel nur für  den IE ist. Die Beispiele für beide Browser hat ich dir ja schon gezeigt.

          Struppi.

          1. hmmm... also hab das mal ausprobiert, bei mir klappt das auch nicht. also einfach die beiden funktionen - no response. Muss ich da nich sagen ruf die auf irgendwann oder so?

            »»Bis jetzt hast du ja noch nicht gesagt was du eigentlich willst

            ich will mausevents abfangen (dragdrop, mousedown, mouseup) und die koordinaten davon haben

            1. hmmm... also hab das mal ausprobiert, bei mir klappt das auch nicht. also einfach die beiden funktionen - no response. Muss ich da nich sagen ruf die auf irgendwann oder so?

              Ja, bei einem Event.

              »»Bis jetzt hast du ja noch nicht gesagt was du eigentlich willst

              ich will mausevents abfangen (dragdrop, mousedown, mouseup) und die koordinaten davon haben

              google mal nach Drag and Drop, da gibt es dutzende fertiger Skripte (wenn mich nicht alles täuscht sogar irgendwo bei selfhtml)

              Struppi.

  2. ich möchte mausevents abfangen. auf selfhtml hab ich gleich ein beispiel dazu gefunden: http://de.selfhtml.org/dhtml/modelle/anzeige/springer.htm
    was auch mit dem firefox funktionieren sollte.
    es aber nicht tut :-)

    Du hast einen Bug gefunden oder die Überschrift nicht gelesen. Die browser symbole sind auf jeden Fall falsch.

    gibt es andere möglichkeiten beim firefox mausevents (auf ebenen) abzufangen?

    http://de.selfhtml.org/dhtml/modelle/dom.htm#event_handling

    Struppi.