4

当用户开始拖动图形时,我想每次都调用我的自定义回调函数。我试着这样做:

figure.onDragStart = function (x, y, shiftKey, ctrlKey) {
    myfunc();
};

但问题是,每次调用我的函数时,图形都会定位到 0,0 坐标。我不确定这有什么问题,我该如何解决。

4

1 回答 1

3

onDragStart您可以处理dragstart事件,而不是重新定义方法:

figure.on("dragstart", function(event, ui) {
    // Do something
});

根据draw2d 文档,该事件由onDragStart. 参数ui包含xy和。_shiftKeyctrlKey

您可以在这个 jsfiddle中看到正在运行的代码。当您开始拖动矩形时,控制台中会显示一条消息。绿色矩形使用dragstart事件并正确响应。红色的重新定义了onDragStart方法,您的问题中提到了问题。

于 2017-08-20T19:35:51.457 回答