我试图将一个变量作为动画属性传递给 jQuery 的 animate 方法,但我遇到了一些麻烦。这是我尝试过的:
// these first two would really be filled in from an external source:
var animationAttribute = 'left';
var newTarget = 500;
var animationToPerform = { animationAttribute: newTarget };
$(element[0].selector).stop().animate(animationToPerform, 400, 'linear');
它根本不起作用,没有错误。如果我将属性硬编码为像这样设置动画,它会起作用:
var newTarget = 500;
var animationToPerform = { 'left': newTarget };
$(element[0].selector).stop().animate(animationToPerform, 400, 'linear');
这些应该是完全相同的,因为它返回 true:
'left' === animationAttribute // (evaluates as true)
请帮忙!