2

在此处输入图像描述

我想使用 javascript 在这些曲线上移动一个对象。当我单击一个对象时,该对象在曲线上移动。我尝试了 jquery 插件的动画方法,但它不起作用。我找不到使用 javascript 执行此操作的方法。是否可以使用 SVG 或者可以使用 javascript 来完成。

请任何人都可以指导我

4

2 回答 2

1

使用 jquery 路径,您可以定义几个 javascript 动画: https ://github.com/weepy/jquery.path

于 2013-02-15T12:25:00.837 回答
0

你可以在这里看到我的代码Demo jsFFidle

<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
    <line class="line_svg" x1="75" y1="100" x2="275" y2="100" />
    <line class="line_svg" x1="75" y1="250" x2="275" y2="250" />
    <line class="line_svg" x1="75" y1="100" x2="75" y2="400" />
    <line class="line_svg" x1="175" y1="100" x2="175" y2="400" />
    <line class="line_svg" x1="275" y1="100" x2="275" y2="400" />
    <line class="line_svg" x1="75" y1="400" x2="275" y2="400" />
    <path id="path1"  
     d="M75,250 C 100,50 250,50 275,250"
     d="M 275,250 C 250,400 100,400 75,250" fill="none" stroke="blue" stroke-width="7.06"  />
      <circle cx="75" cy="250" r="18" fill="blue"  />
      <circle cx="175" cy="100" r="18" fill="blue"  />
      <circle cx="275" cy="250" r="18" fill="blue"  />
      <circle cx="175" cy="400" r="18" fill="blue"  />

<path d="M-25,-12.5 L25,-12.5 L 0,-87.5 z"  fill="yellow" stroke="red" stroke-width="7.06"  >
    <animateTransform
            attributeName="transform"
            begin="0s"
            dur="10s"
            type="rotate"
            from="0 -100 -110"
            to="360 150 150"
            repeatCount="1" />
    <animateMotion dur="11s" repeatCount="1" rotate="auto" >
       <mpath xlink:href="#path1"/>
    </animateMotion>

    <circle id="pointA" cx="75" cy="250" r="5" />
</svg>
于 2013-02-15T12:30:58.487 回答