Javascript 在JQuery.css()函数中使用变量
我试图通过执行以下操作,使用JQuery随机设置图像的Javascript 在JQuery.css()函数中使用变量,javascript,jquery,css,Javascript,Jquery,Css,我试图通过执行以下操作,使用JQuery随机设置图像的左和右值: var sides = ["left", "right"] var currentSide = sides[Math.floor(Math.random() * sides.length)]; $("#"+currentImage).css({currentSide : "80px"}); 因此,我有一个数组,其中包含随机选择的“left”或“right”,元素的CSS设置为right:“80px”或左:80px 但是,它不起作
左
和右
值:
var sides = ["left", "right"]
var currentSide = sides[Math.floor(Math.random() * sides.length)];
$("#"+currentImage).css({currentSide : "80px"});
因此,我有一个数组,其中包含随机选择的“left”或“right”,元素的CSS设置为right:“80px”代码>或左:80px代码>
但是,它不起作用。当我去静态地设置它时,例如,$(“#”+currentImage).css({“left”:“80px”})
然后它就可以正常工作了,所以它只是将变量传递给.css()
函数,而该函数正是这个中断的原因
有什么想法吗?您正在尝试使用动态键创建对象,在这种情况下,您需要使用括号表示法。在本例中,您正在使用键currentSide
创建对象,而不是left/right
你可以用
$("#"+currentImage).css(currentSide, "80px");
您正在尝试使用动态键创建对象,在这种情况下,您需要使用括号表示法。在本例中,您正在使用键currentSide
创建对象,而不是left/right
你可以用
$("#"+currentImage).css(currentSide, "80px");
我将更笼统地回答这一问题,这样您以后就不会遇到这种问题,因为其他应用程序可能没有类似于$().css()
的替代语法。使用此方法,还可以使用单个.css()
调用指定多个样式
var sides = ["left", "right"]
var currentSide = sides[Math.floor(Math.random() * sides.length)];
var styles = {};
styles[currentSide] = "80px";
$("#"+currentImage).css(styles);
我将更笼统地回答这一问题,这样您以后就不会遇到这种问题,因为其他应用程序可能没有类似于$().css()
的替代语法。使用此方法,还可以使用单个.css()
调用指定多个样式
var sides = ["left", "right"]
var currentSide = sides[Math.floor(Math.random() * sides.length)];
var styles = {};
styles[currentSide] = "80px";
$("#"+currentImage).css(styles);
为什么不$(“#“+currentImage).css(currentSide,“80px”)代码>?为什么不$(“#”+currentImage).css(currentSide,“80px”)代码>?