我有以下功能:

$("#myId").css({left: leftVal+"px", top:topVal+"px"});


这可行。

我正在寻找一种将left: leftVal+"px", top:topVal+"px"添加为变量并使函数运行的方法:

$("#myId").css({myCSSstuff});


我尝试过

var myCSSstuff= "left: "+leftVal+"px, top:"+topVal+"px"


但它不起作用。
有没有办法做到这一点?
谢谢

最佳答案

您可以这样做:

var myCSSstuff = { left: leftVal, top: topVal };
$("#myId").css(myCSSstuff);


{}表示对象或关联数组。

您可以通过两种方式添加更多属性:

myCSSstuff.color = 'red';
myCSSstuff['color'] = 'red';


第二种方法允许您使用字符串作为属性名称,即

var prop = 'color';
myCSSstuff[prop] = 'red';

关于jquery - jQuery将变量传递给.css({}),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3635518/

10-12 00:06