我們常常要使用Javascript來改變頁面元素的樣式。其中一個方法是改變頁面元素的CSS類別(Class),這在傳統的Javascript裡,我們通常是透過處理HTML Dom的classname特性來實現的;而jQuery提供三種方法來實現這個功能,雖然它們和傳統方法的想法相通,但是卻節省了許多程式碼。還是那句話 - “jQuery讓JavaScript程式碼變得簡潔!”
1. addClass() - 新增CSS類別
$("#target").addClass("newClass");
//#target 指的是需要加入樣式的元素的ID
//newClass 指的是CSS類別的名稱
2. removeClass() - 移除CSS類別
$("#target" ).removeClass("oldClass");
//#target 指的是需要移除CSS類別的元素的ID
//oldClass 指的是CSS類別的名稱
3. toggleClass() -新增或移除CSS類別:如果CSS類別已經存在,它將被移除;相反,如果CSS類別不存在,它將被加上。
$("#target").toggleClass("newClass")
//如果ID為「target」的元素已經定義了CSS樣式,它將被移除;
//反之,CSS類別”newClass“將被賦給該ID。
在實際運用中,我們常常先定義好這些CSS類,然後透過Javascript事件觸發(例如點擊某個連結)來改變頁面元素樣式。此外,jQuery也提供一個方法 hasClass("className")用來判斷某個元素是否已經被賦予某個CSS類別。
下面是一個完整的範例。