javascript - EaselJS - 如何访问鼠标移动?

标签 javascript easeljs

在对象(基于 this tutorial 创建)中,我有以下代码。在此代码中,行:

event.target.x = evt.stageX; 
event.target.y = evt.stageY;

错了。它们应该是什么来访问鼠标移动?:

(function() {
    ....
    var p = createjs.extend(Card, createjs.Container);
    p.setup = function() {
         this.on("pressmove", this.handlePressMove);
         ....
         p.handlePressMove = function (event) {
             event.target.x = evt.stageX; //"Event" is wrong. So is "evt"
             event.target.y = evt.stageY;
             stage.setChildIndex(this, stage.getNumChildren()-1);
             stage.update();
         }
       }
}());

最佳答案

您的代码示例使用 evt.stageX 而不是 event.stageX。所有 MouseEvent 都有一个 stageXstageY,这是鼠标触发事件时所处的位置。我认为您的代码来自 this tutorial它专门使用 evt

此外,MouseEvents 在 pressMove 事件上有一个 rawXrawY,它们为您提供 Canvas 元素之外的 x/y。 EaselJS MouseEvents 上没有 clientXclientY

这是一个使用 stageX/stageY 的快速示例。 http://jsfiddle.net/lannymcnie/suva8vt3/

片段:

shape.on("pressmove", function(event) {
    shape.x = event.stageX;
    shape.y = event.stageY;
});

关于javascript - EaselJS - 如何访问鼠标移动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31249758/

相关文章:

javascript - res.render 将数据发送到 EJS 文件并在纯 JavaScript 中使用它

javascript - 提取部分 JSON 对象结果

javascript - CreateJS - 图像位图并不总是显示

javascript - 如何在 EaselJS 中按 Enter 键时使光标转到新行

javascript - Easeljs - 优化

javascript - 诊断 body.onload 未被调用

javascript - 如何让show Route在node.js/mongoDB应用程序中显示申请人姓名?

javascript - JS try 不会捕获抛出的错误

html - 用于自定义产品编辑器的HTML5框架

javascript - 使用这段代码你能实现什么目的?