javascript - jQuery - animate() 属性

标签 javascript jquery string variables

我正在使用 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 似乎没有将“direction”识别为“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/

相关文章:

javascript - 在DOM之前的loadURL上加载CSS

javascript - 获取文档后从 Firestore 获取文档 ID

javascript - Facebook 登录手机抛出错误屏幕而不是登录屏幕

javascript - onchange 事件委托(delegate)以附加文本字段

javascript - 使用 Javascript window.open 和 jQuery 提交表单

Python:如何分隔字符串中的字符和数字

javascript - 如何从 Ajax 响应重新填充 jquery UI 日期选择器

javascript - 如何汇总单选按钮选择值的总数(字母,而不是数字)?

string - 相当于 "Error(Err.Number)"VB6 到 VB.NET 2022

java - 用于替换字符串中数字的正则表达式