如何避免jQuery UI draggable从也触发点击事件

前端之家收集整理的这篇文章主要介绍了如何避免jQuery UI draggable从也触发点击事件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > Preventing click event with jQuery drag and drop14个答案A有一个大的div(一个地图),可以通过jQuery UI拖动拖动。该div具有可点击的子div。

我的问题是,如果拖动地图,在鼠标向上,点击事件将触发您启动拖动的任何子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(); } );
    }
});

这是因为“一听众”在“正常”听众之前被触发。所以如果一个监听器停止传播,它将永远不会到达你之前设置的监听器。

猜你在找的jQuery相关文章