2010-08-28 5 views
5
$('#element').draggable ({ 
    stop: function() { 
     alert ('stopped'); 
     //do some action here 
    } 
}).trigger('stop'); 

nichts passiert, dachte #element ziehbar jetzt ist und Ereignis nach Drag ausführt abgeschlossen ist. Ich habe versucht, .triggerHandle sowie 'dragstop' als Eventtype, kein GlückJQuery .trigger ('Stop') Methode für .draggable

Antwort

5

verwenden es auszulösen statt:

.trigger('dragstop') 

Wenn Sie es vollständig als normales Ereignis verhalten, verwenden .bind ('Dragstop ', Funktion), um es ebenfalls anzuhängen, die Startoption verhält sich etwas anders.

+0

Ich habe versucht, die gleichen – selytch

+1

@selytch - Haben Sie versucht, verwenden. binden()? Der Callback wird ein bisschen anders behandelt als ein Straight Binding, der hier aufgerufen wird. –

+0

Danke, das funktioniert! Ich habe nicht realisiert, dass .bind anders funktioniert. Ist das dokumentiert? (wahrscheinlich ja ...) – selytch

-1

Ich weiß, dass dies eine alte Frage ist, aber jetzt ist es möglich, das eigentliche Ziehereignis von jquery ui anstelle von Dragstart und Dragstop unter Verwendung der jQuery simulate plugin auszulösen. Hier

ist der Code, den ich verwenden, weil ich Zugang zu dem Fang Elemente meiner Größe veränderbaren Objekts benötigen (Daten nur accesible auf Schleppanschlag)

$(this).resizable({ 
    handles: 'e', 
    stop: function (e, ui) { 
     var resizable = ui.element;    
     resizable.simulate("mousedown", {clientX: e.clientX, clientY: e.clientY}); 
     resizable.simulate("mousemove", {clientX: e.clientX + 10, clientY: e.clientY + 10}); 
     resizable.simulate("mouseup", {clientX: e.clientX, clientY: e.clientY}); 
    } 
});