2011-01-10 58 views
4

有沒有任何理由,這個CSS不應該工作?jQuery CSS沒有應用

$('.selector').css(
      'background-color', '#74d04c', 
      '-webkit-box-shadow','inset 0px 1px 0px 0px #dbf383, inset 0px -1px 1px #58c43a', 
      '-moz-box-shadow','inset 0px 1px 0px 0px #dbf383, inset 0px -1px 1px #58c43a', 
      'box-shadow','inset 0px 1px 0px 0px #dbf383, inset 0px -1px 1px #58c43a', 
      'border','1px solid #4c8932' 
      ); 

唯一顯示的是背景顏色。

+0

您測試過哪些瀏覽器? (因爲CSS3不適用於每個瀏覽器。) – Damiqib 2011-01-10 18:45:32

回答

11

.css將採用屬性名稱和值或地圖。你可以這樣做:

$('.selector').css('color','blue'); 

...或這個:

$('.selector').css({'color':'blue', 'left':'100px'}); 

的問題是,你是混合的兩種方法。相反,嘗試它是這樣的:

$('.selector').css({ 
    'background-color':'#74d04c', 
    '-webkit-box-shadow':'inset 0px 1px 0px 0px #dbf383, inset 0px -1px 1px #58c43a', 
    etc... 
}); 
6

我想你應該使用JavaScript對象表示法添加不同的規則,而不是一個巨大的數組。

更新:是 - 它接受兩個字符串參數(鍵,值)或鍵值對的映射。資料來源:http://api.jquery.com/css/

+0

+1你擊敗了我18秒! – lonesomeday 2011-01-10 18:46:09

1

如果你應用多個規則,你必須傳遞一個JS對象的CSS函數。 More details。 (「selector」)。css({「background-color」:「red」,「color」:blue});

0

如果要設置多個CSS ATTRS這樣,你需要use a map

$('.selector').css({ 
      'background-color':'#74d04c', 
      '-webkit-box-shadow':'inset 0px 1px 0px 0px #dbf383, inset 0px -1px 1px #58c43a', 
      '-moz-box-shadow':'inset 0px 1px 0px 0px #dbf383, inset 0px -1px 1px #58c43a', 
      'box-shadow':'inset 0px 1px 0px 0px #dbf383, inset 0px -1px 1px #58c43a', 
      'border':'1px solid #4c8932' 
      }); 
1

這應該工作:

$('.selector').css({ 
    'background-color' : '#74d04c', 
     '-webkit-box-shadow' : 'inset 0px 1px 0px 0px #dbf383, inset 0px -1px 1px #58c43a', 
     '-moz-box-shadow':'inset 0px 1px 0px 0px #dbf383, inset 0px -1px 1px #58c43a', 
     'box-shadow':'inset 0px 1px 0px 0px #dbf383, inset 0px -1px 1px #58c43a', 
     'border':'1px solid #4c8932' 
    }); 

Demo

1

修復你的語法。

$('.selector').css({'background-color' : '#74d04c',    
        '-webkit-box-shadow' : 'inset 0px 1px 0px 0px #dbf383, inset 0px -1px 1px #58c43a',    
        '-moz-box-shadow' : 'inset 0px 1px 0px 0px #dbf383, inset 0px -1px 1px #58c43a',    
        'box-shadow' : 'inset 0px 1px 0px 0px #dbf383, inset 0px -1px 1px #58c43a',    
        'border' : '1px solid #4c8932'});