2011-08-18 64 views
0

我怎麼會去這樣做這樣的選擇?左/ jQuery的CSS向右陣列

原因是我想隨機左/右。

我真的想在CSS函數中使用括號,有什麼想法嗎?

編輯 -


$('#foo').animate({ 
    positionX[1]: 300, 
    positionY[1]: 300 
}, 300); 

這是那種我後,什麼想法嘛?

回答

3

試試這個

var cssCfg = {}; 
//Added left/right style - Similarly add other styles and pass the config 
cssCfg[positionY[Math.floor(Math.random() * positionY.length)]] = 200; 
//cssCfg["top"] = 10;//somevalue 
//cssCfg["bottom"] = 10;//somevalue 


$('#foo').css(cssCfg); 

var animCfg = {}; 
animCfg[positionX[1]] = 300; 
animCfg[positionY[1]] = 300; 

$('#foo').animate(animCfg, 300); 

工作demo

+0

這是如何隨機化的東西? –

+0

@Amir - 這是我的錯,我在發佈後編輯了這個問題。 – daryl

+0

@tfbox - 讓我得到更多的選票:) – ShankarSangoli

2

這應該工作:

var positionY = ['left', 'right']; 
var randomNumber = Math.floor(Math.random() * positionY.length); 

var cssStyle = {}; 
cssStyle[positionY[randomNumber]] = 200; 

$('#foo').css(cssStyle); 

其實,我忘了jQuery的css()也需要名稱/值對,所以下面的工作太:

var positionY = ['left', 'right']; 
var randomNumber = Math.floor(Math.random() * positionY.length); 

$('#foo').css(positionY[randomNumber], 200); 
+1

+1首先是關於使用地板。 –

+0

亞爾,獲得一個範圍內的隨機數的正確方法:) – pixelfreak

+0

我會給它+2它是可能的 - 一個用於答案,一個用於使用地板。 –