# ¼³¸í
DraggableÀº ¸ðµâ½Ä µå·¡±× ¾Ø µå·Ó ¶óÀ̺귯¸®·Î, ÀÛÀº ±â´ÉºÎÅÍ ½ÃÀÛÇÏ¿© ÇÊ¿äÇÑ ±â´ÉÀ» Ãß°¡ÇØ ³ª°¥ ¼ö ÀÖ½À´Ï´Ù. °¡Àå ±âº»ÀûÀÎ ±â´ÉÀÎ µå·¡±× ¾Ø µå·Ó, ºü¸¥ DOM ÀçÁ¤·Ä, Á¢±Ù¼º ÀÖ´Â ¸¶Å©¾÷, ±×¸®°í ´Ù¾çÇÑ À̺¥Æ® ó¸® ±â´ÉÀ» Á¦°øÇÕ´Ï´Ù.
³×ÀÌÆ¼ºê µå·¡±×, ¸¶¿ì½º, ÅÍÄ¡ ¹× Æ÷½º ÅÍÄ¡ À̺¥Æ®¿Í ȣȯµË´Ï´Ù.
µå·¡±× °¡´ÉÇÑ À̺¥Æ®ÀÇ ¼ö¸í Áֱ⿡ ¿¬°áÇÏ¿© µå·¡±× µ¿ÀÛÀ» È®ÀåÇÒ ¼ö ÀÖ½À´Ï´Ù.
²ø¾î´ç±æ ¼ö ÀÖ´Â ´ë»ó¿¡ ¼¾¼¸¦ Ãß°¡ÇÏ¿© ²ø¾î´ç±è °¨Áö ±â´ÉÀ» È®ÀåÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÀÌ ¶óÀ̺귯¸®´Â ES6¸¦ ¿ì¼±ÀûÀ¸·Î ´ë»óÀ¸·Î ÇÕ´Ï´Ù.

# ¶óÀ̼¾½º
MIT License
# »ç¿ë¹æ¹ý
¾ÐÃàÆÄÀÏ¿¡ º¸½Ã¸é test.html ÆÄÀÏÀÌ ÀÖ½À´Ï´Ù.
¸¹Àº ±â´Éµé Áß Sortable, Swappable ±â´É¸¸ µ¥¸ð·Î ±¸ÇöÇØ µÎ¾ú½À´Ï´Ù.
# ¿É¼Ç ¼³Á¤
Draggable °øÅë ¿É¼Ç
- draggable : µå·¡±× °¡´ÉÇÑ ¿ä¼ÒÀÇ CSS ¼¿·ºÅÍ
- handle : µå·¡±×¸¦ ½ÃÀÛÇÒ ÇÚµé ¿ä¼ÒÀÇ CSS ¼¿·ºÅÍ
- delay : µå·¡±× ½ÃÀÛ Àü Áö¿¬ ½Ã°£(ms)
- distance : µå·¡±×·Î ÀνÄÇϱâ À§ÇÑ ÃÖ¼Ò À̵¿ °Å¸®(px)
- plugins : »ç¿ëÇÒ Ç÷¯±×ÀÎ ¹è¿
- sensors : »ç¿ëÇÒ ¼¾¼ ¹è¿ (¸¶¿ì½º, ÅÍÄ¡ µî)
- classes : µå·¡±× »óź° CSS Ŭ·¡½º Ä¿½ºÅ͸¶ÀÌ¡ °´Ã¼
Sortable Àü¿ë ¿É¼Ç
- sortAnimation : Á¤·Ä ¾Ö´Ï¸ÞÀÌ¼Ç Ç÷¯±×ÀÎ ¼³Á¤
- swapAnimation : ±³È¯ ¾Ö´Ï¸ÞÀÌ¼Ç Ç÷¯±×ÀÎ ¼³Á¤
Mirror (¹Ì·¯ À̹ÌÁö) ¿É¼Ç
- mirror.appendTo : ¹Ì·¯ ¿ä¼Ò¸¦ Ãß°¡ÇÒ ºÎ¸ð ¿ä¼Ò
- mirror.constrainDimensions : ¹Ì·¯ÀÇ Å©±â¸¦ ¿øº»°ú µ¿ÀÏÇÏ°Ô °íÁ¤ (true/false)
- mirror.xAxis : XÃà À̵¿¸¸ Çã¿ë (true/false)
- mirror.yAxis : YÃà À̵¿¸¸ Çã¿ë (true/false)
- mirror.cursorOffsetX : Ä¿¼ XÃà ¿ÀÇÁ¼Â
- mirror.cursorOffsetY : Ä¿¼ YÃà ¿ÀÇÁ¼Â
Scrollable (ÀÚµ¿ ½ºÅ©·Ñ) ¿É¼Ç
- scrollable.speed : ÀÚµ¿ ½ºÅ©·Ñ ¼Óµµ
- scrollable.sensitivity : ½ºÅ©·Ñ °¨Áö ¿µ¿ª Å©±â(px)
Classes (CSS Ŭ·¡½º Ä¿½ºÅ͸¶ÀÌ¡)
- classes.draggable : µå·¡±× °¡´ÉÇÑ ¿ä¼Ò¿¡ Àû¿ëµÉ Ŭ·¡½º
- classes.mirror : ¹Ì·¯ ¿ä¼Ò¿¡ Àû¿ëµÉ Ŭ·¡½º
- classes.source.dragging : µå·¡±× ÁßÀÎ ¿øº» ¿ä¼Ò Ŭ·¡½º
- classes.source.placed : µå·¡±× ¿Ï·á ÈÄ ¿øº» ¿ä¼Ò Ŭ·¡½º
- classes.container.dragging : µå·¡±× ÁßÀÎ ÄÁÅ×ÀÌ³Ê Å¬·¡½º
- classes.body.dragging : µå·¡±× ÁßÀÏ ¶§ body¿¡ Àû¿ëµÉ Ŭ·¡½º
- classes.draggable.over : µå·¡±× ¿ä¼Ò°¡ À§¿¡ ÀÖÀ» ¶§ Àû¿ëµÉ Ŭ·¡½º
ÁÖ¿äÀ̺¥Æ®
- drag:start : µå·¡±× ½ÃÀÛ ½Ã
- drag:move : µå·¡±× Áß À̵¿ ½Ã
- drag:stop : µå·¡±× Á¾·á ½Ã
- sortable:start : Á¤·Ä ½ÃÀÛ ½Ã (Sortable)
- sortable:sort : Á¤·Ä Áß (Sortable)
- sortable:sorted : Á¤·Ä ¿Ï·á ½Ã (Sortable)
- sortable:stop : Á¤·Ä Á¾·á ½Ã (Sortable)
- swappable:start : ±³È¯ ½ÃÀÛ ½Ã (Swappable)
- swappable:swap : ±³È¯ Áß (Swappable)
- swappable:swapped : ±³È¯ ¿Ï·á ½Ã (Swappable)
- swappable:stop : ±³È¯ Á¾·á ½Ã (Swappable)
- droppable:start : µå·Ó ½ÃÀÛ ½Ã (Droppable)
- droppable:dropped : µå·Ó ¿Ï·á ½Ã (Droppable)
- droppable:returned : ¿ø·¡ À§Ä¡·Î º¹±Í ½Ã (Droppable)
- droppable:stop : µå·Ó Á¾·á ½Ã (Droppable)
- mirror:created : ¹Ì·¯ »ý¼º ½Ã
- mirror:attached : ¹Ì·¯ ºÎÂø ½Ã
- mirror:move : ¹Ì·¯ À̵¿ ½Ã
- mirror:destroy : ¹Ì·¯ Á¦°Å ½Ã
# »ç¿ë ¿¹½Ã

|