我正在创建一个函数,需要从数组中传递值,我需要添加的值之一是jquery css数组的一系列值
本质上,我需要执行以下操作
myArray = new Array();
myArray[0] = ""{'float':'left','-webkit-border-top-left-radius':'20px','-webkit-border-bottom-left-radius':'20px','-webkit-border-top-right-radius':'0px','-webkit-border-bottom-right-radius':'20px'}";"
function(){
$("#myDiv").click(function(){
$(this).css(myArray[0]):
});
}
那不是确切的代码,因为它是更大的函数的一部分,但是我遇到的问题是将数组中的字符串传递给.css数组,如果我只将值包含在数组中,则可以执行此操作,但这意味着我需要将其他不想添加的项目添加到我的数组中
任何帮助-指针将不胜感激
非常感谢!
所以对于上下文
好吧,我的数组是
var card2Pos = new Array(); card2Pos[0]="475px"; card2Pos[1]="80px"; card2Pos[2]="1"; card2Pos[3]="500px"; card2Pos[4]="70px"; card2Pos[5]="90px"; card2Pos[6]="510px"; card2Pos[7]="9";
card2Pos[8]="{'float':'left','-webkit-border-top-left-radius':'20px','-webkit-border-bottom-left-radius':'20px','-webkit-border-top-right-radius':'0px','-webkit-border-bottom-right-radius':'20px'}"; card2Pos[9]="475px"; card2Pos[10]="80px"; card2Pos[11]="580px"; card2Pos[12]="60px"; card2Pos[13]="8"; card2Pos[14]="right"; card2Pos[15]="450px"; card2Pos[16]="90px"; card2Pos[17]="625px"; card2Pos[18]="60px"; card2Pos[19]="7"; card2Pos[20]="right"; card2Pos[21]="425px"; card2Pos[22]="100px"; card2Pos[23]="670px"; card2Pos[24]="60px"; card2Pos[25]="6"; card2Pos[26]="right"; card2Pos[27]="400px"; card2Pos[28]="110px"; card2Pos[29]="715px"; card2Pos[30]="60px"; card2Pos[31]="5"; card2Pos[32]="right"; card2Pos[33]="375px"; card2Pos[34]="120px"; card2Pos[35]="760px"; card2Pos[36]="60px"; card2Pos[37]="4"; card2Pos[38]="right"; card2Pos[39]="350px"; card2Pos[40]="130px"; card2Pos[41]="805px"; card2Pos[42]="60px"; card2Pos[43]="3"; card2Pos[44]="right"; card2Pos[45]="325px"; card2Pos[46]="140px"; card2Pos[47]="850px"; card2Pos[48]="60px"; card2Pos[49]="2"; card2Pos[50]="right";
被传递给以下函数
`
函数uber(arg){
$ card1.animate({
高度:arg [0],
顶部:arg [1]
},500).css({'z-index':card2Pos [2]});
$card2.animate({
height:arg[3],
top:arg[4],
left:arg[5],
width:arg[6]
},500).css({'z-index':arg[7]});
$card2Nav.css(arg[8]);
$card3.animate({
height:arg[9],
top:arg[10],
left:arg[11],
width:arg[12]
},500).css({'z-index':arg[13]});
$card3Nav.css({'float':arg[14]});
$card4.animate({
height:arg[15],
top:arg[16],
left:arg[17],
width:arg[18]
},500).css({'z-index':arg[19]});
$card4Nav.css({'float':arg[20]});
$card5.animate({
height:arg[21],
top:arg[22],
left:arg[23],
width:arg[24]
},500).css({'z-index':arg[25]});
$card5Nav.css({'float':arg[26]});
$card6.animate({
height:arg[27],
top:arg[28],
left:arg[29],
width:arg[30]
},500).css({'z-index':arg[31]});
$card6Nav.css({'float':arg[32]});
$card7.animate({
height:arg[33],
top:arg[34],
left:arg[35],
width:arg[36]
},500).css({'z-index':arg[37]});
$card7Nav.css({'float':arg[38]});
$card8.animate({
height:arg[39],
top:arg[40],
left:arg[41],
width:arg[42]
},500).css({'z-index':arg[43]});
$card8Nav.css({'float':arg[44]});
$card9.animate({
height:arg[45],
top:arg[46],
left:arg[47],
width:arg[48]
},500).css({'z-index':arg[49]});
$card9Nav.css({'float':arg[50]});
}
`
最佳答案
您可以执行此操作,但不要将其存储为字符串-而是直接存储为对象,如下所示:
var myArray = [
{'float':'left','-webkit-border-top-left-radius':'20px','-webkit-border-bottom-left-radius':'20px','-webkit-border-top-right-radius':'0px','-webkit-border-bottom-right-radius':'20px'}
//more objects...
];
$(function(){
$("#myDiv").click(function(){
$(this).css(myArray[0]);
});
});
You can try it out here。