J'utilise l'interface utilisateur jquery et jQuery draggable
, tous mes draggables utiliser jquery clone aide et ajoute le draggable-largable.jQuery draggables et droppables Positionnement
Voici mon code
$('#squeezePage #droppable').droppable({
tolerance: 'fit',
accept: '#squeezeWidgets .squeezeWidget',
drop: function(event, ui) {
var dropElem = ui.draggable.html();
var clone = $(dropElem).clone();
clone.css('position', 'absolute');
clone.css('top', ui.absolutePosition.top);
clone.css('left', ui.absolutePosition.left);
$(this).append(clone);
$(this).find('.top').remove();
$(this).find('.widgetContent').slideDown('fast');
$(this).find('.widgetContent').draggable({
containment: '#squeezePage #droppable',
cursor: 'crosshair',
grid: [20, 20],
scroll: true,
snap: true,
snapMode: 'outer',
refreshPositions: true
});
$(this).find('.widgetContent').resizable({
maxWidth: 560,
minHeight: 60,
minWidth: 180,
grid: 20,
});
}
});
Je réglage de la position du clone avec .css('top', ui.absolutePosition.top);
et css('left', ui.absolutePosition.left);
mais la position est par rapport au corps.
La position n'est pas relative à la droppable qui fait tomber le draggable à des endroits aléatoires. Dans l'ensemble, l'intégration des solutions de rechange et des solutions déplaçables n'est pas stricte. Je veux le rendre plus lisse.
où variable droppableOffset est jQuery ('# squeezePage #droppable'). Offset(); – Haris
J'ai passé tant d'heures à chercher une solution similaire .. merci beaucoup. –