查看源代码:http://raphaeljs.com/touches.html
http://raphaeljs.com/touches.html
如果有人解释为什么这个拖放示例有效,我会很高兴。我可以粗略地收集每个函数正在做什么,但我无法拼凑出为什么当没有任何东西告诉它移动时它会移动。
最佳答案
move
函数的行为类似于回调,它接受 2 个参数:dx, dy
。它们分别代表 delta-X 和 delta-Y。
如果您看到这一行:
this.attr({cx: this.ox + dx, cy: this.oy + dy});
然后你会注意到ox和oy分别代表original-X和original-Y。
因此,您可以推断 attr 函数正在使用指定原始 X + 增量 X 和原始 Y + 增量 Y 的参数进行调用。
有道理吗?
不要与动画调用混淆 - 它们用于在开始/停止时扩展/收缩形状。每次移动鼠标时,都会调用 move
函数,并更新 attr
。
关于javascript - Raphael js拖放的解释?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11654173/