【发布时间】:2020-03-08 15:26:31
【问题描述】:
嘿,我想移动 svg 元素。我用 mousemove EventListener 调用这个函数。我只是将当前的 Mouseposition 减去 svg 元素的起点。然后我准备一个带有值的字符串以在 tarnsform 属性中使用它。问题是当我没有设置属性时,我总是有正确的翻译值。但是当我设置属性时,它总是在靠近原点的值和正确的值之间切换。
elementDrag(event) {
if (this.selectedElement && event.target.type != "textarea") {
let coord = this.getMousePosition(event);
//console.log(this.offset.x, this.offset.y);
let x = coord.x - this.start.x;
let y = coord.y - this.start.y;
console.log(x,y);
this.translate = "translate(";
this.translate += x + ",";
this.translate += y + ")";
this.translate = this.translate.toString();
//when i comment this line out I have always the right translate
this.selectedElement.setAttribute("transform", this.translate);
}
}
感谢您的帮助:)
【问题讨论】:
标签: javascript vue.js mouseevent event-listener mousemove