2012-08-04 73 views
0

我一直在與這裏提供了答案: Apply a random class to every element specified應用相同的隨機類的每個元素指定

不過,我想它從上市然後隨機選擇類適用於三個項目類中進行選擇。

$(document).ready(function() { 
    var classes = ["c4kdarkerBlue", "c4korange", "c4kyellow", "c4kyellow", "c4kpink", "c4kpurple", "c4kgreen", "c4kred"]; 

    $(".instructorDetails h3, .instructorDetails h4, .instructorDetails h5").each(function(){ 
     $(this).addClass(classes[Math.floor(Math.random()*classes.length)]); 
    }); 
}); 

上面的代碼選擇一個隨機類,但是對每個項目應用不同的項目,而不是對所有三個項目應用相同的類別。

我需要h3,h4和h5都具有相同的顏色 - 隨機選擇。

感謝您的幫助。

+0

定義each()循環之外的隨機類並將其應用於您正在操作的內部。 – 2012-08-04 07:45:20

回答

4

如果您在.each內部創建隨機數,它將爲每個元素生成一個新數字。你應該這樣做;

$(document).ready(function() { 
    var classes = ["c4kdarkerBlue", "c4korange", "c4kyellow", "c4kyellow", "c4kpink", "c4kpurple", "c4kgreen", "c4kred"], 
     randNum = Math.floor(Math.random()*classes.length); 

    $(".instructorDetails h3, .instructorDetails h4, .instructorDetails h5").each(function(){ 
     $(this).addClass(classes[randNum]); 
    }); 
}); 
+0

非常感謝Osoner - 這很完美! – 2012-08-04 09:13:28

相關問題