Minimal Multiple Sortable Plugin For jQuery UI - multipleSortable
| File Size: | 7.29 KB |
|---|---|
| Views Total: | 4946 |
| Last Update: | |
| Publish Date: | |
| Official Website: | Go to website |
| License: | MIT |
multipleSortable is a small jQuery plugin to extend the jQuery UI sortable widget that allows multiple DOM elements to be draggable and sortable at a time.
How to use it:
1. Load the necessary jQuery and jQuery UI libraries in your html document.
<script src="jquery.min.js"></script> <script src="jquery-ui.min.js"></script>
2. Load the minified version of the jQuery multipleSortable plugin at the bottom of the webpage.
<script src="jquery.multipleSortable.js"></script>
3. Attach the plugin to a group of DOM elements you specify.
<div id="vertical-list">
<ul class="v-sortable">
<li>item1-1</li>
<li>item1-2</li>
<li>item1-3</li>
...
</ul>
<ul class="v-sortable">
<li>item2-1</li>
<li>item2-2</li>
<li>item2-3</li>
...
</ul>
<ul class="v-sortable">
<li>item3-1</li>
<li>item3-2</li>
<li>item3-3</li>
...
</ul>
</div>
$('.v-sortable').multipleSortable({
items: 'li',
connectWith: '.v-sortable',
container: '#vertical-list'
});
4. The plugin will automatically add the CSS class 'multiple-sortable-selected' to the selected elements. You can override the CSS class in the JavaScript as this:
.multiple-sortable-selected {
background-color: yellow;
color: #222;
}
$('.el').multipleSortable({
selectedClass: 'multiple-sortable-selected'
});
5. Decide whether to keep the elements selected after sorting.
$('.v-sortable').multipleSortable({
keepSelection: true
});
6. Horizontal sorting is supported as well.
$('.h-sortable').multipleSortable({
orientation: 'horizontal'
});
7. Callback functions.
$('.el').multipleSortable({
click: function(e) { console.log('click', e); },
activate: function(event, ui, items) { console.log('activate', event, ui, items) },
beforeStop: function(event, ui, items) { console.log('beforeStop', event, ui, items) },
change: function(event, ui, items) { console.log('change', event, ui, items) },
create: function(event, ui, items) { console.log('create', event, ui, items) },
deactivate: function(event, ui, items) { console.log('deactivate', event, ui, items) },
out: function(event, ui, items) { console.log('out', event, ui, items) },
over: function(event, ui, items) { console.log('over', event, ui, items) },
receive: function(event, ui, items) { console.log('receive', event, ui, items) },
remove: function(event, ui, items) { console.log('remove', event, ui, items) },
sort: function(event, ui, items) { console.log('sort', event, ui, items) },
start: function(event, ui, items) { console.log('start', event, ui, items) },
stop: function(event, ui, items) { console.log('stop', event, ui, items) },
update: function(event, ui, items) { console.log('update', event, ui, items) },
});
This awesome jQuery plugin is developed by itmammoth. For more Advanced Usages, please check the demo page or visit the official website.










