Javascript 函数参数不会加载

标签 javascript parameters snap.svg

我正在制作一个 svg 文件的动画,为了不让我的代码变得臃肿,我编写了以下函数:

function animateSingleAtt(svgName, element, attToAnimate, attValue, animationTiming) {
    svgName.select( element ).animate({
        attToAnimate : attValue
    }, animationTiming);
}

除了 attToAnimate 之外,所有参数都加载得很好。我不知道为什么会这样——它只是作为名为“attToAnimate”的属性传递给 svg 元素。

我尝试将其记录在动画函数之外,当我这样做时,它就顺利通过了。

任何帮助将不胜感激!

最佳答案

看起来您正在使用 attToAnimate 作为对象上的键。要正确执行此操作,请将代码更改为如下所示:

function animateSingleAtt(svgName, element, attToAnimate, attValue, animationTiming) {
  var anObject = {};
  anObject[attToAnimate] = attValue;
  svgName.select( element ).animate(anObject, animationTiming);
}

这应该正确构建您想要传递给 .animate 的对象

关于Javascript 函数参数不会加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40641476/

相关文章:

javascript - 如何将 DOM 元素转换为 Snap.svg 元素?

javascript - 在 iframe 中获取 innerdiv 的 id

javascript - 选项标签返回字符串值而不是 Angular 中 ngModel 的数字

c++ - C++无法解析的外部函数,编译错误和带有字符串的数组

jQuery:如何获取url的参数?

javascript - 尝试使用 snap.svg。 "Paper"对象不工作

javascript - 文本对象到路径 : how to remove a single path from a double path produced when you use print method in Raphael js using cambam fonts?

javascript - Safari 视频不工作,但所有浏览器工作自动播放。多个视频一个一个播放

javascript - 为什么变量仍然可达?

ruby-on-rails - Rails 新闻过滤器 url seo