Gunnar Bittersmann: Re: Create ’n drag

Hello out there!

„Ich bin so klug als wie zuvor.“

Ich möchte beim Click auf ein Icon ein ebensolches erstellen und gleich mit der Maus wegziehen, solange, bis die Maustaste losgelassen wird.

Mein Versuch: HTML, JavaScript, CSS

Dummerweise wird beim Loslassen der Maustaste das neue Icon nur erstellt, zum Wegziehen muss man die Maustaste erneut drücken.

Was mache ich falsch?

See ya up the road,
Gunnar

PS: Im Beispiel ist nur der relevante Code. In der function Icon() passiert noch mehr.

--
„Wer Gründe anhört, kommt in Gefahr nachzugeben.“ (Goethe)
  1. Hallo Gunnar,

    konnte es mir jetzt nicht genauer ansehen, weil ich gleich ins Kino muss um mir den neuen 007 anzusehen.

    Hast Du mal probiert statt if (dragObject) ein Flag als glob. Var zu verwenden?
    Ferner sind mir noch zwei Kleinigkeiten aufgefallen: x und y als Variablen markiert mein Editor immer und ich bin mir dann nie sicher, obs da wirklich keine Probleme mit reservierten Namen gibt und wenn ich es auf die schnelle jetzt richtig sehe, dann schaltest Du den EH für mousemove nicht mehr ab, wodurch dann ständig die func. move aufgerufen wird, auch wenn gar nichts gedraggt ist.

    Grüße und evtl. bis nach 007

    Michi

  2. Hi nochmal,

    bist Du sicher, dass auch der IE den Event kennt, wenn Du move(event) mit move; aufrufst?
    Evtl. musst Du ihn dann erst noch erzeugen (move(ev) if(!ev) var ev = window.event;)? (Außerdem wäre ich auch vorsichtig damit den Parameter "event" (oder nur e, wie man es auch oft sieht) zu nennen).

    greets

    michi

  3. Hallo Gunnar

    Dummerweise wird beim Loslassen der Maustaste das neue Icon nur erstellt, zum Wegziehen muss man die Maustaste erneut drücken.

    Was mache ich falsch?

    Du müsstest die drag-Funktion nicht nur dem onmousedown des Icons zuweisen, sondern diese nach dem Erstellen einmal direkt aufrufen.

    Auf Wiederlesen
    Detlef

    --
    - Wissen ist gut
    - Können ist besser
    - aber das Beste und Interessanteste ist der Weg dahin!
    1. Hello out there!

      Du müsstest die drag-Funktion nicht nur dem onmousedown des Icons zuweisen, sondern diese nach dem Erstellen einmal direkt aufrufen.

      Ach nee, he? Is’ ja eigentlich zu banal, um wahr zu sein. ;-)

      Vielen Dank.

      See ya up the road,
      Gunnar

      --
      „Wer Gründe anhört, kommt in Gefahr nachzugeben.“ (Goethe)
  4. Hi!

    Dummerweise wird beim Loslassen der Maustaste das neue Icon nur erstellt, zum Wegziehen muss man die Maustaste erneut drücken.

    Was mache ich falsch?

    Wenn das Icon nach dem Kreieren auch gleich in den Zustand eines gezogenen Elements versetzt werden soll, musst du den Drag&Drop-Vorgang natürlich beim Kreieren initiieren.
    Dazu reicht es den JavaScript-Code um folgende Zeile zu erweitern:

    function Icon(backgroundPosition, left, top)  
    {  
      []  
      drag(thisIcon);  
    }
    

    BTW: Schön, dass die Blockklammern übersichtlich angeordnet sind ;-)

    1. Hello out there!

      Hast du dich mit Detlef abgesprochen, mich einen halben Tag lang schmoren zu lassen, um dann mit geballter Kraft gegen mich vorzugehen?

      Was soll ich sagen? Danke.

      BTW: Schön, dass die Blockklammern übersichtlich angeordnet sind ;-)

      Ja, darauf bin ich besonders stolz.

      See ya up the road,
      Gunnar

      --
      „Wer Gründe anhört, kommt in Gefahr nachzugeben.“ (Goethe)