You can use the cursorAt
option, this seems to help a lot.
Working example
$(document).ready(function () { $('.handle').mousedown(function() { $('.stuff-to-hide').hide(); }); $("#SortParent").sortable({ cursorAt: {top:25, left:15}, //Important bit handle: '.handle', items: '.sort-child', start: function(event, ui) { $('.stuff-to-hide').hide(); $('.sort-child').addClass('diff-height'); }, helper: function() { return '<p>MY DRAGGING BAR</p>'; }, forceHelperHeight: true, stop: function() { $('.stuff-to-hide').show(); $('.sort-child').removeClass('diff-height'); } }); });
Or you could use some sort of sortable accordion:
Working example
$(function () { $("#accordion") .accordion({ active: true, header: "> div > h3", collapsible: true }) .sortable({ forceHelperSize: true, cursorAt: { top: 5 }, tolerance: 'pointer', axis: "y", handle: "h3", placeholder: "place", start: function () { var active = $("#accordion").accordion("option", "active"); $("#accordion").accordion("option", "active", false); }, stop: function (event, ui) {
apaul source share