Rt
有这样两个 div
左边这里有个 红色的拖拽按钮,可以用来左右拖拽
改变 div 宽度
大致代码是这样的
<div @mousedown="mousedown" ....></div>
mousedown(){
//可以开始拖拽
this.resizing = true
},
mousemove(){
if(!this.resizing) return //没有拖动直接返回
},
mouseup(){
//弹起结束拖拽
this.resizing = false
}
逻辑看起来没啥问题 但是遇到了这样的场景
我鼠标拖动很快的时候 导致鼠标脱离了这个按钮,然后就无法触发 mouseup
事件
导致 结束不了拖拽的 bug.求问大佬们有没有遇到过这样的问题,如何解决?
参考了 @君迹我心 的回复的第一句话
把事件委托给范围尽可能大的一个祖先节点,比如 document 节点。
自己做了点改造如下