Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Snapsvg设置渐变移动的动画_Javascript_Animation_Snap.svg - Fatal编程技术网

Javascript Snapsvg设置渐变移动的动画

Javascript Snapsvg设置渐变移动的动画,javascript,animation,snap.svg,Javascript,Animation,Snap.svg,我有一个带渐变的箭头: var g = field.gradient("l(0, 1, 2, 1)#fff-#5C5C5C"); var arrow = field.path(Snap.format("M390 385 L335 335 L410 355 Q375 355 390 385")).attr({fill: g, opacity: 0.5, cursor: 'pointer'}); 我想做一个效果,使梯度像波浪或其他东西一样改变/移动。。 这是我想要的flash页面:你可以尝试设置渐

我有一个带渐变的箭头:

var g = field.gradient("l(0, 1, 2, 1)#fff-#5C5C5C");
var arrow = field.path(Snap.format("M390 385 L335 335 L410 355 Q375 355 390 385")).attr({fill: g, opacity: 0.5, cursor: 'pointer'});
我想做一个效果,使梯度像波浪或其他东西一样改变/移动。。
这是我想要的flash页面:

你可以尝试设置渐变动画,比如

s = Snap(400, 620);

var g = s.gradient("l(0, 1, 2, 1)#5C5C5C-#fff-#5C5C5C");
var arrow = s.path(Snap.format("M390 385 L335 335 L410 355 Q375 355 390 385")).attr({fill: g, opacity: 0.5, cursor: 'pointer'});

function anim () {
    g.attr({ x1: 0, y1: 1, x2: 2, y2: 1 });
    g.animate({ x1: 0, y1: 100, x2: 0, y2: 100 }, 2000, mina.linear, anim);
};

anim();

您可以尝试设置渐变动画,例如

s = Snap(400, 620);

var g = s.gradient("l(0, 1, 2, 1)#5C5C5C-#fff-#5C5C5C");
var arrow = s.path(Snap.format("M390 385 L335 335 L410 355 Q375 355 390 385")).attr({fill: g, opacity: 0.5, cursor: 'pointer'});

function anim () {
    g.attr({ x1: 0, y1: 1, x2: 2, y2: 1 });
    g.animate({ x1: 0, y1: 100, x2: 0, y2: 100 }, 2000, mina.linear, anim);
};

anim();

伊恩的联系是正确的。您可以访问颜色停止位置的数组,作为沿渐变的百分比,并使用如下代码分别设置它们的动画:

// 1st color stop moves to 25% from the end over 1000ms
g.selectAll("*")[0].animate({offset: 0.25}, 1000)
// 2nd color stop moves to the 50% point over 500ms
g.selectAll("*")[0].animate({offset: 0.50}, 500)
// 3rd color stop moves to 75% from the end over 300ms
g.selectAll("*")[0].animate({offset: 0.75}, 300)

伊恩的联系是正确的。您可以访问颜色停止位置的数组,作为沿渐变的百分比,并使用如下代码分别设置它们的动画:

// 1st color stop moves to 25% from the end over 1000ms
g.selectAll("*")[0].animate({offset: 0.25}, 1000)
// 2nd color stop moves to the 50% point over 500ms
g.selectAll("*")[0].animate({offset: 0.50}, 500)
// 3rd color stop moves to 75% from the end over 300ms
g.selectAll("*")[0].animate({offset: 0.75}, 300)

你知道有没有办法给渐变的颜色设置动画吗?我试着研究渐变的源代码,它看起来像颜色被称为停止,但我一辈子都不知道如何在动画功能中使用它们。我不知道具体的方法来设置颜色的动画。你可以像这样改变停止颜色,但我不知道如何作为动画的一部分逐渐改变颜色,如果这是你想要的。你也许能从中得到你所需要的,并在渐变中组合正确的颜色。谢谢你,这比我得到的还要多。我会再搞一点的。我很感谢你的帮助。你知道有没有办法给渐变的颜色设置动画?我试着研究渐变的源代码,它看起来像颜色被称为停止,但我一辈子都不知道如何在动画功能中使用它们。我不知道具体的方法来设置颜色的动画。你可以像这样改变停止颜色,但我不知道如何作为动画的一部分逐渐改变颜色,如果这是你想要的。你也许能从中得到你所需要的,并在渐变中组合正确的颜色。谢谢你,这比我得到的还要多。我会再搞一点的。我感谢你的帮助。