Animate 中HTMLCanvas 画布下的鼠标事件列表(DOM 鼠标)

在 JavaScript 和 ‌Adobe Animate(CreateJS)‌ 中,常用的鼠标交互事件可分为两大类:‌基础 DOM 事件‌ 和 ‌CreateJS 扩展事件‌12。以下是完整分类:


一、基础 DOM 鼠标事件

事件名触发场景冒泡特性
click鼠标左键单击元素时触发
dblclick鼠标左键双击元素时触发
mousedown鼠标按键按下(左/中/右键)时触发
mouseup鼠标按键释放时触发
mousemove鼠标在元素内移动时触发
mouseover鼠标进入元素或其子元素时触发
mouseout鼠标离开元素或其子元素时触发
mouseenter鼠标进入元素本身时触发(不冒泡)
mouseleave鼠标离开元素本身时触发(不冒泡)
contextmenu右键点击触发菜单时触发

二、CreateJS 特有扩展事件

事件名触发场景特性说明
pressmove鼠标按下后移动时持续触发(常用于拖拽)连续触发
pressup鼠标按键释放时触发(对应 mouseup单次触发
rollover鼠标进入显示对象时触发(类似 mouseenter不冒泡
rollout鼠标离开显示对象时触发(类似 mouseleave不冒泡

javascriptCopy Code

// CreateJS 示例:拖拽交互 sprite.on("pressmove", (evt) => { evt.target.x = evt.stageX; evt.target.y = evt.stageY; });


三、事件选择建议

  1. 优先使用 mouseenter/leave
    替代 mouseover/out,避免子元素触发导致的频繁回调36。

  2. 拖拽交互必用 pressmove
    相比 mousemovepressmove 仅在按下时触发,避免误操作48。

  3. 移动端适配
    需同时监听 touchstart 和 mousedown 事件以兼容触屏设备47。


四、完整事件流示例


javascriptCopy Code

// 基础事件流 element.on("mousedown", () => console.log("按下")); element.on("pressmove", () => console.log("移动中")); element.on("pressup", () => console.log("释放")); // 点击事件流 element.on("click", () => console.log("单击完成"));

通过合理选择事件类型,可实现精准的交互控制24。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Unity数字工匠

难题的解决使成本节约,求打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值