EDIT: Ecco un link per mostrarvi il mio codice di esempio: http://www.singingeels.com/jqtest/jQuery: Come si simula il trascinamento e il rilascio nel codice?
Ho una pagina molto semplice che fa riferimento jquery-1.3.2.js, ui.core.js (ultima versione) e ui.draggable.js (anche l'ultima versione).
Ho un div che posso trascinare in giro molto facilmente (usando il mouse, ovviamente):
<div id="myDiv">hello</div>
e poi in JavaScript:
$("#myDiv").draggable();
Questo è funziona perfettamente. Ma ho bisogno di essere in grado di simulare un 'drag and drop' usando solo il codice. L'ho quasi sempre funzionante, ma il problema è che gli eventi che stanno sparando sono gli eventi segnaposto.
Se si apre "ui.core.js" e scorrere verso il basso ... si vedrà questo:
// These are placeholder methods, to be overriden by extending plugin
_mouseStart: function(event) { },
_mouseDrag: function(event) { },
_mouseStop: function(event) { },
_mouseCapture: function(event) { return true; }
Perché non sono gli eventi che si esteso correttamente nella mia simulazione, ma quando fai clic giù con il mouse, sono? - Qualche idea su come forzare _mouseDrag: proprietà a obbedire all'estensione di override in "ui.draggable.js"?
Risolvere questo sarebbe enorme - e ho intenzione di mostrare i maggiori benefici in seguito.
Grazie, -Timothy
EDIT: Ecco un link per mostrarvi il mio codice di esempio: http://www.singingeels.com/jqtest/
EDIT 2: Fare clic su tale link qui sopra e view-source ... vedrai quello che ho sto cercando di fare Ecco uno snippet:
$(document).ready(function() {
var myDiv = $("#myDiv");
myDiv.draggable();
// This will set enough properties to simulate valid mouse options.
$.ui.mouse.options = $.ui.mouse.defaults;
var divOffset = myDiv.offset();
// This will simulate clicking down on the div - works mostly.
$.ui.mouse._mouseDown({
target: myDiv,
pageX: divOffset.left,
pageY: divOffset.top,
which: 1,
preventDefault: function() { }
});
});
Potresti mostrarci il tuo codice? Dicci cosa non funziona e come ti aspetti che funzioni. – SolutionYogi
Perché non stai usando tutto JQueryUI come un unico file? – Sneakyness
Proverò a mettere su un esempio di codice ... il motivo per cui la roba dell'interfaccia utente è separata è solo per il debug. –