我正在使用jQuery的animate函数,如下所示:
var css1 = {
display: "block",
marginTop: 20
};
var direction = "marginTop";
$(element).animate(css1, 150, 'swing');
注意上面的
marginTop
属性。好吧,我想用direction变量替换它,但是由于某种原因它不起作用。有人知道为什么吗?以后编辑:
基本上我要替换:
var css1 = {
display: "block",
marginTop: 20
};
与
var css1 = {
display: "block",
direction: 20
};
问题是jQuery似乎无法将“方向”识别为“ marginTop”属性
最佳答案
您可以使用bracket notation来执行所需的动态属性,如下所示:
var direction = "marginTop";
var css1 = { display: "block" };
css1[direction] = 20;
$(element).animate(css1, 150, 'swing');
也可以通过
css1.marginTop
访问css1["marginTop"]
,并且可以将变量用于第二个(括号表示法)版本。关于javascript - jQuery-animate()属性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3860064/