当前位置: 首页 > news >正文

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。

相关文章:

  • 14、服务端组件:未来魔法预览——React 19 RSC实践
  • 权力结构下的人才价值重构:从 “工具论” 到 “存在论” 的转变​
  • 详解React Fiber架构中,reconcile阶段的具体工作流程
  • 【项目篇之消息序列化】仿照RabbitMQ模拟实现消息队列
  • PostgreSQL psql 命令和常用的 SQL 语句整理
  • WGS84(GPS)、火星坐标系(GCJ02)、百度地图(BD09)坐标系转换Java代码
  • 哈希封装unordered_map和unordered_set的模拟实现
  • 海思dump图原理
  • socket套接字-UDP(中)
  • java Optional
  • 【MQ篇】RabbitMQ之死信交换机!
  • OpenCV 图形API(65)图像结构分析和形状描述符------拟合二维点集的直线函数 fitLine2D()
  • FlinkUpsertKafka深度解析
  • 基础的贝叶斯神经网络(BNN)回归
  • 零基础小白如何上岸数模国奖
  • 大学之大:伦敦政治经济学院2025.4.27
  • 【音视频】FFmpeg过滤器框架分析
  • 人工智能—— K-means 聚类算法
  • Spring Cloud Alibaba 整合 Sentinel:实现微服务高可用防护
  • Awesome-Embodied-AI: 具身机器人的资源库
  • 俄乌战火不熄,特朗普在梵蒂冈与泽连斯基会晤后口风突变
  • 上海市委常委会传达学习总书记重要讲话精神,研究张江科学城建设等事项
  • 【社论】用生态环境法典守护生态文明
  • 第一集丨《无尽的尽头》值得关注,《榜上佳婿》平平无奇
  • 孟泽:我们简化了历史,因此也简化了人性
  • 申花四连胜领跑中超联赛,下轮榜首大战对蓉城将是硬仗考验