Sto usando jquery ordinabile per ordinare elementi su più contenitori.Refresh Helper Position
ho opzione aiutante impostata su 'clone' in questo modo
$("#sup").sortable({
helper: "clone"
});
Quindi quello che succede qui è che quando un elemento inizia il trascinamento, jQuery crea un duplicato e lo aggiunge al corpo, e che diventa il elemento che in realtà viene trascinato (l'helper), non l'originale.
Il mio assistente può cambiare posizione quando inizia il trascinamento. Tuttavia, jQuery pensa che l'helper sia dove lo ha messo, anche se ho cambiato la sua posizione usando il margine, quando l'elemento è stato rilasciato all'interno di un contenitore l'helper non è effettivamente sopra (dato che ho cambiato posizione helper).
Domanda: Come posso avere jQuery ricalcolare la posizione dell'helper dopo averlo modificato?
$("#sup").sortable({
helper: "clone",
start: function(event, ui) {
var marginsToSet = ui.item.data().sortableItem.margins;
// helper position changed
ui.helper.css('margin-left', marginsToSet.left);
ui.helper.css('margin-top', marginsToSet.top);
}
});
Esempio: http://codepen.io/anon/pen/qZaNJZ Si può vedere che l'evidenziazione segnaposto andrà al contenitore successivo, anche quando non è in bilico completamente. Perché la posizione del blocco non è quella impostata da jquery.
ho iniziato una taglia per questo ... Funziona alla grande, completamente dimenticato la tolleranza era una cosa. – guub