A 有一个大 div( map ),可以通过 jQuery UI 拖动。该 div 具有可点击的子 div。
我的问题是,如果您拖动 map ,在鼠标向上时,单击事件将在您开始拖动的任何子 div 上触发。
如果鼠标是拖动的一部分,如何阻止鼠标向上触发单击事件(而不是直接单击而不拖动,在这种情况下需要单击事件)。
最佳答案
$('.selector').draggable({
stop: function(event, ui) {
// event.toElement is the element that was responsible
// for triggering this event. The handle, in case of a draggable.
$( event.originalEvent.target ).one('click', function(e){ e.stopImmediatePropagation(); } );
}
});
这是有效的,因为“one-listeners”是在“正常”听众之前被触发的。因此,如果单监听器停止传播,它将永远不会到达您之前设置的监听器。
关于jquery - 如何避免 jQuery UI Draggable 也触发点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3486760/