我很新于JavaScript和RaphaelJS,对于我的混乱代码我感到抱歉,但我需要完成下一个任务:我需要绘制一个矩形,并制作一种方法来拖放和调整大小。而且这种方式必须在平板电脑上运行。我想在底部和右侧绘制2个小圆圈,并使用它们调整此矩形的大小,但我遇到了数学问题,因为下面的代码存在一些问题:http://jsfiddle.net/x5zHp/(只有一个圆圈)。
当我拖动矩形时,您可以看到鼠标和矩形不同时移动,鼠标箭头滑出。
请指出我的错误以及可能的最佳代码解决方案,我会非常感激任何帮助。 我找到了一个名为Free Transform的插件,但我想自己完成这个任务,因为最终我需要对其进行一些处理,并且使用此插件将很难工作(例如,我将更改圆圈的大小或使其不可见,因为它必须易于在平板电脑上使用手指捕捉圆圈) 提前感谢您的帮助,对我的英语表示歉意
更新
最终我让它工作了:http://jsfiddle.net/y5Jag/7/。我还添加了一个不可见的圆圈,因此很容易捕捉到可见的圆圈(实际上我将在平板电脑上使用它)。我唯一真正讨厌的是代码。它非常混乱。
当我拖动矩形时,您可以看到鼠标和矩形不同时移动,鼠标箭头滑出。
请指出我的错误以及可能的最佳代码解决方案,我会非常感激任何帮助。 我找到了一个名为Free Transform的插件,但我想自己完成这个任务,因为最终我需要对其进行一些处理,并且使用此插件将很难工作(例如,我将更改圆圈的大小或使其不可见,因为它必须易于在平板电脑上使用手指捕捉圆圈) 提前感谢您的帮助,对我的英语表示歉意
更新
最终我让它工作了:http://jsfiddle.net/y5Jag/7/。我还添加了一个不可见的圆圈,因此很容易捕捉到可见的圆圈(实际上我将在平板电脑上使用它)。我唯一真正讨厌的是代码。它非常混乱。
this.ox = this.attr('cx');
this.oy = this.attr('cy');
this.rox = Spectrum.resizer.attr('cx');
this.roy = Spectrum.resizer.attr('cy');
this.rwidth = Spectrum.rect.attr('width');
this.rheight = Spectrum.rect.attr('height');
有什么建议可以美化这个...