javascript drag and drop

javascript drag and drop

offline
  • Niko E
  • Software & Information Engineering
  • Pridružio: 05 Maj 2009
  • Poruke: 135
  • Gde živiš: Wien

Ovako našao sam neku skriptu:

<html> <head> <title>Drag-and-Drop</title> <script type="text/javascript"> var dragobjekt = null; var dragx = 0; var dragy = 0; // Pozicija misa var posx = 0; var posy = 0; function draginit() {   document.onmousemove = drag;   document.onmouseup = dragstop; } function dragstart(element) {   dragobjekt = element;   dragx = posx - dragobjekt.offsetLeft;   dragy = posy - dragobjekt.offsetTop; } function dragstop() {   dragobjekt=null; } function drag(event) {   posx = document.all ? window.event.clientX : event.pageX;   posy = document.all ? window.event.clientY : event.pageY;   if(dragobjekt != null) {     dragobjekt.style.left = (posx - dragx) + "px";     dragobjekt.style.top = (posy - dragy) + "px";   } } //--> </script> </head> <body onload="draginit()"> <div onmousedown="dragstart(this)" style="position:absolute;top:0px;left:0px;height:100px;width:100px;background:#ff0000"> </div> <div onmousedown="dragstart(this)" style="position:absolute;top:200px;left:0px;height:100px;width:100px;background:#00ff00"> </div> </body> </html>

Radi dobro, ali kako da je ograničim? Ne želim da se objekat pomera van granice preglednika.
Npr. da se ne dešava ovo:


Inače ne mora baš ova skripta, može i neka druga (npr. jqueryui.com/draggable/) samo je bitno da mogu da pomeram objekat i da ima ograničen prostor po kojem može da se kreće.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Programer
  • Pridružio: 23 Maj 2012
  • Poruke: 4575

Napisano: 09 Okt 2014 15:20

Koristi opciju containment.

http://api.jqueryui.com/draggable/#option-containment

Dopuna: 09 Okt 2014 15:21

Što ne radiš u jQuery, mnogo je brže i jednostavnije?



Ko je trenutno na forumu
 

Ukupno su 519 korisnika na forumu :: 7 registrovanih, 5 sakrivenih i 507 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: Dorcolac, krkalon, milenko crazy north, minmatar34957, voja64, zlaya011, zziko