今天也碰到了和题主类似的需求,不知道题主最后是如何解决的,我这边说下我的实现方式。
1.通过控制台的eventlistener可以判断出组件是通过pointerup
pointerdown
pointermove
事件来实现拖动的,分析出这点,接下来就好办了
2.在图中左侧元素的dragenter
事件中触发pointerdown
自定义事件
dom.dispatchEvent(new PointerEvent('pointerdown', {
clientX: event.clientX,
clientY: event.clientY,
pointerType: 'mouse',
bubbles: true
})
3.dragover
事件中触发pointermove
自定义事件,drop
事件中触发pointerup
自定义事件,方式和上面一样
大功告成!
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…