使用Aurelia InteractionJS拖动克隆

使用Aurelia InteractionJS拖动克隆,aurelia,interact.js,Aurelia,Interact.js,我正在尝试使用InteracticJS和aurelia来创建一个系统,在这个系统中,拖动克隆了被拖动的对象,而不是移动它 根据interactjs FAQ(),这可以使用interactjs中的移动指针事件来完成。但是,aurelia interactjs似乎没有公开interactjs指针事件 除了interactjs常见问题解答中描述的方法之外,还有其他方法可以实现这一点吗?好的,我设法回答了自己的问题。有另一种创建克隆的方法,由Magnum79在此处概述: 使用它而不是interact m

我正在尝试使用InteracticJS和aurelia来创建一个系统,在这个系统中,拖动克隆了被拖动的对象,而不是移动它

根据interactjs FAQ(),这可以使用interactjs中的移动指针事件来完成。但是,aurelia interactjs似乎没有公开interactjs指针事件


除了interactjs常见问题解答中描述的方法之外,还有其他方法可以实现这一点吗?

好的,我设法回答了自己的问题。有另一种创建克隆的方法,由Magnum79在此处概述:

使用它而不是interact move()可以避免在aurelia InteractiveJS中支持指针事件。对定位和转换为aurelia进行轻微修改,即可产生:

dragStart(event) {
    event = event.detail;
    if (!event.target.dragOrigin) {
        var clone = event.target.cloneNode(true);
        clone.dragOrigin = event.target;
        event.interaction.element = clone;
        event.interaction.dragging = false;
        var dragTarget = clone;
        document.body.appendChild(clone);
        var r = event.target.getBoundingClientRect();
        clone.style.position = 'absolute';
        clone.style.left = r.left + 'px';
        clone.style.top = r.top + 'px';
    } else {
        dragTarget = event.target;
    }
}

这很有魅力。

你知道如何让上面的代码像工具栏一样拖放吗?假设它是一个输入框,我想把它拖过来,然后可以拖动另一个输入框。现在,一旦拖放完成,对象将无法拖动again@AndreDeMattia这是一个新问题。我建议您提出一个新问题,链接到此问题:)