[英]How do I get mouse coordinates on Fabric.js?
我正在尝试读取Fabric.js上的鼠标单击的X坐标。
这是我的代码。 控制台每次都会记录undefined
日志。
var canvas = new fabric.Canvas('c1');
canvas.on('mouse:down', function(e){
getMouse(e);
});
function getMouse(e) {
console.log(e.clientX);
}
最好的解决方法是这种方法
实现方式:
function getMouseCoords(event)
{
var pointer = canvas.getPointer(event.e);
var posX = pointer.x;
var posY = pointer.y;
console.log(posX+", "+posY); // Log to console
}
要基于画布本身上设置的宽度和高度获取坐标,请使用layerX和layerY属性。
canvas.on('mouse:move', function(options) {
console.log(options.e.layerX, options.e.layerY);
});
尝试这个,
function getMouse(e) {
console.log(e.e.clientX);
}
更新,因为canvas events
将options
作为argument
而不是像这样an event
,
canvas.on('mouse:down', function(options){
getMouse(options);// its not an event its options of your canvas object
});
function getMouse(options) {
console.log(options);// you can check all options here
console.log(options.e.clientX);
}
也许这会有所帮助:
//Convert To Local Point
function toLocalPoint(event, canvas) {
var offset = fabric.util.getElementOffset(canvas.lowerCanvasEl), localX = event.e.clientX - offset.left, localY = event.e.clientY - offset.top;
return new fabric.Point(localX, localY);
}
只需使用eeclientX
要么
客户端
获得职位
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.