父元素设置mousedown之后子元素的dragstart事件就不触发了?
<div
ref="wrap"
class="table-main"
@dragenter="handlePrevent($event)"
@dragover="handlePrevent($event)"
@drop.capture="handleDrop($event)"
@mousedown="down($event)"
@mouseup="up($event)"
@mousemove="move($event)"
>
<div
v-for="(item, index) in tables"
:key="index"
class="table-item"
:style="{
left: item.x + 'px',
top: item.y + 'px',
transform: `rotate(${item.angle}deg)`
}"
@dragstart.stop="curDragstart($event, index)"
draggable="true"
@click.stop="handleTable(index)"
>
<span>{{ item.name }}</span>
</div>
</div>
给table-main添加mousedown这些鼠标事件之后,拖拽子元素table-item,他的dragstart就不触发了,直接触发父元素的mousedown事件,但是我明明给子元素添加了.stop阻止向上冒泡,问什么还是会直接触发table-main的mousedown呢?
回复
1个回答

test
2024-06-26
给子元素加一个 @mousedown.stop=""
试试因为你子元素的 mousedown
冒泡出去了触发了父元素的 mousedown
回复

适合作为回答的
- 经过验证的有效解决办法
- 自己的经验指引,对解决问题有帮助
- 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
- 询问内容细节或回复楼层
- 与题目无关的内容
- “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容