2012-01-25 64 views
3

我正在嘗試創建一個函數,該函數將顏色範圍從黑色更改爲我定義的顏色列表中的隨機顏色。我的問題似乎在.css(「color」,variableName)部分。我想我可能會犯我的語法錯誤。 (http://jsfiddle.net/crismanNoble/8gM76/使用.css()與變量定義css屬性值的問題

$(".randomRoll") 
    .mouseover(function() { 
       var colors = ["6F216C", "F34B0D", "C50102", "5DA537", "F1D81B"]; 
       var pick = Math.floor(Math.random()*5); 
       var colorN = colors[pick]; 
       $(this).css("color", colorN); 
       //alert(colorN); 
       }) 
    .mouseout(function() { 
       $(this).css('color','black'); 
    }); 
+1

'$(this).css(「color」,「#」+ colorN);'會訣竅... – Hannes

回答

7

你必須在你的CSS使用任何十六進制值前加上一個哈希(#)。 $(this).css("color","#"+colorN);

或更好,但添加它們在你的顏色數組。

+1

哇,我是個白癡。感謝您的快速回復! – Crisman

+0

每個人都會看到一些小錯誤,比如那些偶爾的:) @Derek謝謝,編輯。 – TJHeuvel

+0

這不是一個括號,而是一個散列。括號可以是方形的[]或捲曲的[{}']。 :) – MetalFrog