When the button is clicked, a new div is created. After creating a div, it becomes draggable thanks to the help of jqueryui draggable PLUGIN . I am facing a problem that occurs when I try to fold a div on top of another. The last div created will remain at the top and cannot be overridden by any previously created div. Any suggestions or solutions on how I can stack divs not forbidden / restricted by the last creation of the div element? JSFIDDLE
Jquery
$('#button').click(function (e) { $('<div />', { class: 'draggable ui-widget-content', text: $('textarea').val(), appendTo: '.middle-side', draggable: { containment: 'parent' } }).addClass('placement'); $('.middle-side').parent().mousemove(function(e){ var offset = $(this).offset(); var relX = e.pageX - offset.left; var relY = e.pageY - offset.top; $('.placement').css({'top': relY + 30,'left': relX + 10, 'position': 'absolute'}); }) }); $('.middle-side').on('click', function(e){ var offset = $(this).offset(); var relX = e.pageX - offset.left; var relY = e.pageY - offset.top; $('.placement').css({'top': relY,'left': relX, 'position': 'absolute' }); $(this).off("mousemove").find('.placement').removeClass('placement') });
HTML
<textarea rows="4" cols="50" placeholder="Enter Text Here!"></textarea> <br/> <input type="button" id="button" value="Add Div with Text" /> <br/> <div> <div class="middle-side empty"></div> </div>
source share