我有一个draggable div,可以使用jqueryUI draggable库进行拖动。我在div上有一个onclick处理程序,但是当我拖动div时,它会触发我不需要的单击处理程序。拖动停止发生在单击之前,因此我尝试了此操作:
$("#div").draggable({
stop: function(e) {
e.originalEvent.stopPropagation();
}
});
,但仍会触发onclick事件。有JavaScript大师的想法吗?
答案 0 :(得分:1)
您可以使用链接并直接在click方法上进行处理。
处于拖动状态时,the draggable gets a new class: ui-draggable-dragging
。
$("#div")
.draggable()
.click(function(){
if ( $(this).is('.ui-draggable-dragging') ) {
return;
}
// click action here
});