2011-08-06 278 views
10

我試圖將從當前顏色到其他顏色的鏈接顏色變化動畫化。jQuery動畫顏色變化

$(window).load(function(){ 
    $('.article-preview h1 a').hover(function(){ 
     $(this).animate({ 
      color: #ffffff 
     }, 1500); 
    }); 
}); 

由於某種原因,它不起作用。我正在使用jQuery color plugin

回答

13

你需要用十六進制三重字符串中的,改變這種:

color: #ffffff 

這樣:

color: "#ffffff" 
+0

我知道這將是愚蠢的東西這樣。該死的天氣炎熱。謝謝!順便說一句,顏色名稱是否必須用引號括起來? – wowpatrick

+2

@wowpatrick,如果你不把顏色名稱包含在引號中,解釋器會認爲它們是變量名稱。這可能不是你想要的。 –

+0

np。是的,你也必須包裝顏色名稱。 – Baversjo

4

的基本問題是可能是你不知道的jQuery的/ JavaScript的符號,
寫作#ffffff會給你語法錯誤,因爲SharpSign +字母不代表JS中的任何東西。
快速解決方案:你要通過六色爲字符串:color: "#ffffff"

jQuery的支持通過對象的幾個不同的符號爲.css() & .animate()方法,
讓我的GUID您通過他們。

屬性名稱/鍵

(邊框,寬度,...)可以寫成3種方式:

backgroundColor //DOM formatting 
'backgroundColor' //DOM formatting BUT - passed as a STRING 
'background-color' //CSS formatting - passed as a STRING 

屬性值/值

(#FFFFFF ,0px,none,...)可以用3種方式寫入

0   // 'pure' number - Integer (useful when pre-calculating pixels) 
20.5  //    - Float 
'0'  // number BUT passed as STRING - Integer 
'20.5' //        - Float 
'0px'  // string 
'#ffffff' // - || - 
'auto' // - || - 

你可以rougly說,除了像素的一切,串總是通過
=>在引號(單'或雙"),這意味着或當然你可以傳遞一個字符串變量

所以對於初學者來說最安全的方法可能是始終對兩個鍵都使用引號符號 - 鍵值爲& &值。

...

總體

JSON - JavaScript Object Notation

所有這一切都

這一切實際上是用部分在jQuery's .css() method documentation

描述在

一些錯誤當心(以上)互聯網探索者(見文檔的.css().animate()方法)

我二叔D不顯示示例的所有字符串傳遞的可能性,例如:

在jQuery 1.6,的CSS()接受類似於 .animate相對值()。相對值是以+ =或 - =開始的字符串,以 遞增或遞減當前值。例如,如果一個元素的填充左邊爲10px,則.css(「padding-left」,「+ = 15」)會導致 總共填充25px。

JSON對象具有數字和字符串更有效的值 - 布爾,數組,對象,空...