tomgk: Verschieben von Bildern durch Drag and Drop-Events

Hallo,

Ich habe es geschaft divs durch Drag and Drop-Events mit Javascripts zu verschieben.
Wenn ich das auf Bilder anwende funktionierts nicht.
Bild in einen DIV funktioniert auch nicht.

Ich verwende FF3.

MfG
tomgk

  1. Hallo,

    Oh, das tut mir wirklich Leid, aber meine Astrologie-Ausbildung beschränkt sich auf die Vorhersage des Wetters. Wie lautet denn dein Code, wir müssen das nämlich auf die traditionelle Art und weise per posting im forum machen. Tut mir echt Leid. Die alternative wäre, du schaltest VNC bei dir ein und gibst mir die Zugangsdaten zu deinem Admin-Konto.

    mfg, Flo

    --
    Developers are dying. Computers are getting trash. CEO's become forgetten. The only remaining things are ideas, lies and crises. So if you want to be immortal, first think, than stop it and go to microsoft and become later a manager at Lehman Brothers...
    sh:) fo:| ch:? rl:( br:^ n4:| ie:{ mo:| va:} de:> zu:} fl:{ ss:) ls:< js:|
    *Zu dem de:> Ich benutze wegen IE im moment noch tabellen, weil dieser display:table noch nicht versteht. Ich werde aber, wenn IE 6 & IE 7 < 10% mein neues CSS-Layout einspielen...
  2. Hallo,

    nett, dass du uns diese Mitteilung machst. Hast du auch eine Frage und möchtest Hilfe?

    Für Bilder bieten Browser üblicherweise selbst Drag'n'Drop an. Ich vermute mal, darum geht es dir. Das kannst du z.B. unterbinden, indem du für gewisse Drag-Events (etwa dragstart) bei den Bildern einen Handler registrierst, in dem du die Standardaktion unterbindest (return false). So sollte ein browserseitiges Drag'n'Drop von Bildern im Firefox unterbunden werden, sodass dein Script greifen kann.

    https://developer.mozilla.org/En/DragDrop/Drag_and_Drop

    https://redaktion.selfhtml.org/selfhtml-preview/javascript/einbindung.html#standardaktion (SSL-Warnungen wegklicken.)

    Mathias

    1. Hallo,

      Ich kapiers nicht.

      Hier mein Derzeitiger Code:

      <html>  
      <head>  
      <script src="JS/Draganddrop.js" type="text/javascript"></script>  
      <script type="text/javascript">  
      </script></head>  
      <body>  
      <div id="box" onmousedown="dragstart(this)" style="position:absolute;top:200px;left:0px;height:100px;width:100px;background:#00ff00"> </div>  
      <img id="bild" onmousedown="dragstart(this)" src="../Images/working.gif" align=middle valign=center>  
      <script>  
       draginit("box",drag, dragstop);  
       draginit("bild",drag, dragstop);  
      </script>  
      </body>  
        
      </body>  
      </html>
      

      Und Draganddrop.js:

      //Das Objekt, das gerade bewegt wird.  
      var dragobjekt = null;  
        
      // Position, an der das Objekt angeklickt wurde.  
      var dragx = 0;  
      var dragy = 0;  
        
      // Mausposition  
      var posx = 0;  
      var posy = 0;  
        
      //Höchster Z-Index  
      var zIndex=0;  
        
        
      function draginit(elementID,onmove,onup)  
      {  
       // Initialisierung der Überwachung der Events  
       document.getElementById(elementID).onmousemove=onmove  
       document.getElementById(elementID).onmouseup = onup;  
       return false;  
      }  
        
        
      function dragstart(element)  
      {  
       //Wird aufgerufen, wenn ein Objekt bewegt werden soll.  
        
       dragobjekt = element;  
       dragx = posx - dragobjekt.offsetLeft;  
       dragy = posy - dragobjekt.offsetTop;  
        
       //zIndex erhöhen!  
       ++zIndex;  
       element.style.zIndex=zIndex;  
       return false;  
      }  
        
        
      function dragstop()  
      {  
       //Wird aufgerufen, wenn ein Objekt nicht mehr bewegt werden soll. Ansonsten würde Element an Mauszeiger kleben!  
       dragobjekt=null;  
       return false;  
      }  
        
        
      function drag(ereignis)  
      {  
       //Wird aufgerufen, wenn die Maus bewegt wird und bewegt bei Bedarf das Objekt.  
        
       posx = document.all ? window.event.clientX : ereignis.pageX;  
       posy = document.all ? window.event.clientY : ereignis.pageY;  
       if(dragobjekt != null)  
       {  
        dragobjekt.style.left = (posx - dragx) + "px";  
        dragobjekt.style.top = (posy - dragy) + "px";  
       }  
       return false;  
      }  
      
      

      Wie schon gesagt: Es funktionier nur beim DIV.

      MfG
      tomgk

  3. Ich habe es geschaft divs durch Drag and Drop-Events mit Javascripts zu verschieben.
    Wenn ich das auf Bilder anwende funktionierts nicht.
    Bild in einen DIV funktioniert auch nicht.

    Bei mir schon http://javascript.jstruebig.de/javascript/67/ und http://javascript.jstruebig.de/skripte/57/

    Struppi.