Javascript 仅将事件应用于父级
我有一个相当大的Javascript 仅将事件应用于父级,javascript,jquery,html,css,drag-and-drop,Javascript,Jquery,Html,Css,Drag And Drop,我有一个相当大的div 在div中,我有几个其他元素 单击并拖动父div时,如果它有溢出,我希望它拖动它(找到一个库来执行此操作) 如果单击并拖动元素,我想拖动元素(还找到了该元素的库) 现在的问题是,当我单击并拖动父div时,它工作正常,但当我单击并拖动元素时,它会拖动元素并拖动父div 所有库的工作条件都是提供jQuery选择器 是否可以指定类似于$('#parent_div and:notInsideElements')之类的内容 编辑: 我正在使用的两个库是和 至于标记-我为JointJ
div
在div
中,我有几个其他元素
单击并拖动父div时,如果它有溢出,我希望它拖动它(找到一个库来执行此操作)
如果单击并拖动元素
,我想拖动元素
(还找到了该元素的库)
现在的问题是,当我单击并拖动父div
时,它工作正常,但当我单击并拖动元素
时,它会拖动元素
并拖动父div
所有库的工作条件都是提供jQuery选择器
是否可以指定类似于$('#parent_div and:notInsideElements')
之类的内容
编辑:
我正在使用的两个库是和
至于标记-我为JointJS创建一张纸,然后在纸容器上应用UtterScroll。在onDrag处理程序中使用
事件.stopPropagation()代码>这将防止事件冒泡到父元素。尝试以下操作:
paper.on('cell:pointerdown', function(cellView, evt, x, y) {
evt.stopPropagation();
});
paper.on('cell:pointermove', function(cellView, evt, x, y) {
evt.stopPropagation();
});
我不确定是否可以合并事件,因为文档中没有这样说。然而,值得一试
paper.on('cell:pointerdown cell:pointermove', function(cellView, evt, x, y) {
evt.stopPropagation();
});
请在问题中包含您的标记。请提供您的代码您使用的是什么库?-如果您选择的是一个id,那么您应用的样式将只影响该元素。这可能就是你要找的。在孩子的拖拽下,停止传播。不确定你们是否有权访问,所以我现在还不会发布答案。不,没有帮助。首先调用纸张的拖动。