我在做什麼這裏是非常簡單的:怪異的行爲時
當有人從一個選擇選擇一個選項,我想那選擇的背景色更改爲選擇選項顏色。
$("select").change(function(){
var newcolor=$(this).children("option:selected").css("background-color");
$(this).css("backgroundColor", newcolor);
});
容易吧?那麼它在Firefox 17.0.1中完全不起作用(它可以在Chrome中運行)。問題是變量newcolor被填充:rgb(51, 153, 255)
。最好的部分是這種顏色無處可找我的代碼,CSS或任何東西。
我試過改變background-color
到backgroundColor
,children
到find
,沒有什麼作用。
有趣的部分是,如果我這樣做:
$("select").change(function(){
var newcolor=$(this).children("option:first").css("background-color");
$(this).css("backgroundColor", newcolor);
});
並選擇第一個選項,而不是選擇一個...它的作品!
我可以使用一些類可能使它工作,但我很好奇,爲什麼會發生這種情況,並有任何方法來解決它?
編輯:增加了一個jsFiddle。用chrome和firefox試試吧!
你可以設置一個jsfiddle讓我們看看發生了什麼? –
[我可以強制jQuery.css(「backgroundColor」)以十六進制格式返回?](http://stackoverflow.com/questions/6177454/can-i-force-jquery-cssbackgroundcolor-returns-on-hexadecimal -format) –
添加了jsFiddle – Naryl