Skip to content

Latest commit

 

History

History
54 lines (46 loc) · 3.79 KB

README.md

File metadata and controls

54 lines (46 loc) · 3.79 KB

#Drag and Drop for AngularJS (with Animation)


###v1.0.5 - breaking change Do not pass evaluated expressions in callbacks. For example, ####Before:

<div jqyoui-draggable="{onStart:'startCallback({{item}})'}">{{item.title}}</div>

####After:

<div jqyoui-draggable="{onStart:'startCallback(item)'}">{{item.title}}</div>

##Angular Draggable options

  • jqyoui-draggable – A custom angular attribute to make any element draggable. It holds more settings such as:
    • index – number – $index of an item of a model (if it is an array) associated with it
    • placeholder – boolean/string – If true, the place will be occupied even though a dragggable is moved/dropped somewhere else. If 'keep' is supplied, the original item won't be removed from the draggable.
    • animate – boolean – If true, draggable will be animated towards droppable when dropped. If multiple is not set to true on droppable then its draggable will swap its position.
    • onStart – string – callback method to be invoked (has to be defined in a controller) when dragging starts
    • onStop – string – callback method to be invoked when dragging stops
    • onDrag – string – callback method to be invoked while the mouse is moved during the dragging
    • applyFilter - string - applies AngularJS $filter on the list before swapping items. Only applicable, if ngRepeat has any filter (such as orderBy, limitTo) associated with it.
    • containment – string - position/offset. Offset by default. This forces to use jQuery.position() or jQuery.offset() to calculate proper position with respect to parent element or document respectively.
  • data-drag – boolean – If true, element can be draggable. Disabled otherwise.
  • data-jqyoui-options – object – should hold all the valid options supported by jQueryUI Draggable
  • ng-model – string – An angular model defined in a controller. Should be a JS array or object

##Angular Droppable options

  • jqyoui-droppable – A custom angular attribute to make any element droppable. It holds more settings such as:
    • index – number – $index of an item of a model (if it is an array) associated with it
    • multiple – boolean – Requires to be true only if animate is set to true for draggable and to avoid swapping.
    • stack – boolean – Requires if animate is set to true on draggable and if multiple draggables positioned one below the other
    • onDrop – string – callback method to be invoked a draggable is dropped into the droppable
    • onOver – string – callback method to be invoked when an accepted draggable is dragged over the droppable
    • onOut – string – callback method to be invoked when an accepted draggable is dragged out of the droppable
    • applyFilter - string - requires if both droppable as well as draggable share the same ngModel.
    • containment – string - position/offset. Offset by default. This forces to use jQuery.position() or jQuery.offset() to calculate proper position with respect to parent element or document respectively.
  • data-drop – boolean – If true, element can be droppable. Disabled otherwise.
  • data-jqyoui-options – object – should hold all the valid options supported by jQueryUI Droppable
  • ng-model – string – An angular model defined in a controller. Should be a JS array or object.

##Set up

  • $ cd angular-dragdrop
  • $ sudo npm install
  • $ sudo bower install
  • $ grunt karma

Support

If you're having problems with using the project, use the support forum at CodersClan.