jQuery UI API - .toggleClass()
所屬類別
特效(Effects) | 特效核心(Effects Core) | 方法重載(Method Overrides)
用法
描述:當(dāng)動(dòng)畫樣式改變時(shí),根據(jù) Class 是否存在以及 switch 參數(shù)的值,為匹配的元素集合內(nèi)的每個(gè)元素添加或移除一個(gè)或多個(gè) Class。
返回:jQuery
參數(shù) | 類型 | 描述 | 默認(rèn)值 |
---|---|---|---|
ClassName | String | 為匹配的元素集合中的每個(gè)元素要切換的一個(gè)或多個(gè) class 名稱,多個(gè) class 名稱用空格分隔 。 | |
switch | Boolean | 一個(gè)布爾值,指定 class 應(yīng)被添加還是被移除。 | |
duration | Number 或 String | 一個(gè)字符串或一個(gè)數(shù)字,指定動(dòng)畫將運(yùn)行多久。 | 400 |
easing | String | 一個(gè)字符串,指示要使用的 easing 函數(shù)。 | swing |
complete | Function() | 一旦動(dòng)畫完成時(shí)要調(diào)用的函數(shù)。 |
參數(shù) | 類型 | 描述 |
---|---|---|
ClassName | String | 為匹配的元素集合中的每個(gè)元素要切換的一個(gè)或多個(gè) class 名稱,多個(gè) class 名稱用空格分隔 。 |
switch | Boolean | 一個(gè)布爾值,指定 class 應(yīng)被添加還是被移除。 |
options | Object | 所有的動(dòng)畫設(shè)置。所有的屬性是可選的。
|
與原生的 CSS 過渡相似,jQuery UI 的 class 動(dòng)畫提供了一個(gè)平穩(wěn)的從一個(gè)狀態(tài)轉(zhuǎn)換到另一個(gè)狀態(tài)的過渡,同時(shí)確保所有樣式變化的細(xì)節(jié)是通過 CSS 來完成的,而不需要使用 JavaScript。所有的 class 動(dòng)畫方法,包括 .toggleClass()
,允許自定義動(dòng)畫持續(xù)時(shí)間和 easing 函數(shù),在動(dòng)畫完成時(shí)也提供了一個(gè)回調(diào)。
并非所有的樣式都可以進(jìn)行動(dòng)畫添加。例如,對背景圖像進(jìn)行動(dòng)畫化。任何不能動(dòng)畫化的樣式都將在動(dòng)畫結(jié)束時(shí)改變。
該插件擴(kuò)展自 jQuery 內(nèi)置的 .toggleClass() 方法。如果 jQuery UI 未加載,調(diào)用 .toggleClass()
方法不會(huì)直接失敗,因?yàn)樵摲椒ㄔ?jQuery 中存在。但是不會(huì)發(fā)生預(yù)期的行為。
實(shí)例
為匹配的元素切換 class "big-blue"。
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>.toggleClass() 演示</title> <link rel="stylesheet" rel="external nofollow" target="_blank" > <style> div { width: 100px; height: 100px; background-color: #ccc; } .big-blue { width: 200px; height: 200px; background-color: #00f; } </style> <script src="http://code.jquery.com/jquery-1.10.2.js" rel="external nofollow" ></script> <script src="http://code.jquery.com/ui/1.10.4/jquery-ui.js" rel="external nofollow" ></script> </head> <body> <div></div> <script> $( "div" ).click(function() { $( this ).toggleClass( "big-blue", 1000, "easeOutSine" ); }); </script> </body> </html>
更多建議: