目标:
- 按下鼠标之后拖动鼠标,盒子跟随鼠标移动
- 松开鼠标,盒子原地停止移动
- 能够多次移动盒子
事件监听:
mousedown、mousemove、mouseup
注意:
mousedown和click的区别👉mousedown、mouseup、click事件之间的关系及执行顺序
解绑事件👉mdn:removeEventListener()
思路:
- 按下鼠标,获取当前盒子位于页面的坐标ox/oy,获取当前鼠标位于页面的坐标mx/my
- 不松开鼠标,移动鼠标,实时记录鼠标位于页面的坐标mx_m/my_m,并计算出此时盒子应该位于页面的坐标ox+mx_m-mx/oy+my_m-my,将坐标赋给盒子,做到盒子实时移动
- 松开鼠标,盒子不再移动
- 再次点击盒子,盒子依然能够跟随鼠标移动
代码
<!DOCTYPE html>
<html l