gpt4 book ai didi

javascript - 如何使用 raphael.js 重复绘制折线动画

转载 作者:行者123 更新时间:2023-11-28 00:50:36 25 4
gpt4 key购买 nike

我知道有几个与 raphael 和 js 动画有关的问题,但我在那里找不到任何帮助。我对 js 完全陌生,非常感谢您的帮助。

我想和 raphael 一起制作一些单词的动画(用路径绘制它们)。我想画一个单词,删除它并画另一个单词,等等。我想绘制(动画)单词“CAT”,清除它,然后动画单词“MAN”,清除它,动画单词“DOG”,清除它并再次动画 CAT,然后是 MAN 等等。

我有两个代码正在做我想做的事情,但我无法将它们组合起来。如果您告诉我如何一起使用它们,或者也许有其他方法来完成我想做的任务,我将不胜感激。

  1. 这个使用动画和指定线条绘制一个字母

    <html>
    <head>
    <script src="raphael-min.js"></script>

    <script>
    var c= Raphael("canvas", 200, 200);
    var p = c.path("M140 100");
    var r = c.path("M165 60");
    var s = c.path("M153 80");
    p.animate({path:"M140 100 L165 60"}, 2000, function() {
    r.animate({path: "M165 60 L190 100"}, 2000, function() {
    s.animate({path: "M153 80 L178 80"}, 2000);
    });
    });
    };
    </script>
    </head>
    <body>
    <div id="canvas"></div>
    </body>

  2. 这个动画一条线并重复它

    <html>
    <head>
    <style>
    #icon {
    width: 500px;
    height: 500xp;
    }
    </style>

    <script src="jquery-2.1.1.min.js"></script>
    <script src="raphael-min.js"></script>
    <script>
    $(document).ready(function() {
    var paper = Raphael("icon", 500, 500);
    var path = paper.path("M 140 100");

    var anim = Raphael.animation({path : "M 100 100 400 400"}, 1000).repeat(Infinity);
    path.animate(anim);
    });
    </script>
    </head>
    <body>
    <div id="icon"></div>
    </body>
    </html>

最佳答案

假设您成功地对字母进行了动画处理,而您的问题只是一个接一个地进行动画处理。

您应该在集合内绘制动画,我相信这是使用删除在同一容器内绘制和重绘的最佳方法(它不适用于简单变量)。

var c= Raphael("canvas");
function a() {
c.setStart();
p = c.path("M140 100").attr({stroke: "#000"});
r = c.path("M165 60").attr({stroke: "#000"});
s = c.path("M153 80").attr({stroke: "#000"});
p.animate({path:"M140 100 L165 60"}, 2000, function() {
r.animate({path: "M165 60 L190 100"}, 2000, function() {
s.animate({path: "M153 80 L178 80"}, 2000);
});
});
cat = c.setFinish();
};
a();
setInterval(function() {
cat.remove();
a();
}, 10000);

在另一个函数之后调用一个函数的一种方法是使用 setInterval 但这部分我不确定它是否是最好的。

关于javascript - 如何使用 raphael.js 重复绘制折线动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26845305/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com