2013-02-27 10 views
5

Próbuję złapać zdarzenie dragend w JavaScript dla przeciągalnej DIV. Zdarzenie przeciągania nie jest w ogóle uruchamiane, dlaczego? i jak rozwiązać ten problem? PS, ja ussing metodę .draggable() z: jQuery UI 1.9.2Jak wychwycić zdarzenie przeciągania w javascript?

Oto mój kod: http://jsfiddle.net/vBMav/

HTML:

<div id="divId"> ... </div> 

CSS:

#divId { 
    background-color: #000000; 
    color: #ffffff; 
    height: 200px; 
    width: 200px; 
} 

javascript:

$('#divId').draggable(); 

$('#divId') 
    .bind('dragstart', function(){ $("#divId").text("drag start"); }) 
    .bind('drag',  function(){ $("#divId").text("dragging"); }) 
    .bind('dragend', function(){ $("#divId").text("drag ended"); }); 

Odpowiedz

11

Spróbuj użyć 'dragstop' zamiast 'dragend'

.bind ('dragstop', function() {$ ("# divId") tekst ("drag zakończony");.});

+0

To działa! Jaka jest różnica między nimi ? –

+2

To jest poprawne zastosowanie jako napisane w dokumentacji: http://api.jqueryui.com/draggable/ – Jacob

+1

W dokumentacji jQuery, to prawda, ale dlaczego nie użyć jQuery „dragend” wydarzenie, które o ile mi można powiedzieć, że jest w standardzie HTML5, a "dragstop" nie jest? –

Powiązane problemy