如何在javascript中捕获dragend事件?

时间:2013-02-27 14:05:55

标签: javascript jquery jquery-ui jquery-ui-draggable

我正试图在Javascript中捕获dragend事件以获得可拖动的DIV。 dragend事件根本没有被解雇,为什么?以及如何解决这个问题? PS,我是来自jQuery UI 1.9.2

的.draggable()方法

这是我的代码: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"); });

2 个答案:

答案 0 :(得分:12)

尝试使用'dragstop'代替'dragend'

  

.bind('dragstop',function(){$(“#divId”)。text(“drag ended”);});

答案 1 :(得分:0)

在JavaScript和jQuery 中,当用户停止拖动光标时,触发的事件为:dragend

在jQuery UI中,在调用.draggable();之后,当用户停止拖动光标时,触发的事件将变为:dragstop。 (Small demo showing that dragstop no longer works when .draggable() isn't called.

文档...

JavaScript -dragend:在Google上进行搜索会产生大约100,000个搜索结果,因此您可能会使用这种搜索结果。来源:MDN Web Docs: Document: dragend Event

jQuery UI -dragstop:截至2020年8月,在Google上搜索“ jQuery UI Dragstop”仅产生5,000个搜索结果。我几乎找不到任何提及,但是在 Official jQuery UI Documentation: Draggable Widget 中。