雞西網站建設制作優化設計[SEO]
本頁定位
在線咨詢

JQuery動態添加刪除Class的方法

假裝紳士??1年前 (2018-09-04)1706A+A-

如何使用JQuery動態添加與刪除Class的樣式呢?

雞西網站設計為大家介紹了幾種方法,有需要添加或刪除Class的朋友,不要錯過哦。

一、獲取與設置樣式

獲取class和設置class都可以使用attr()方法來完成。 1、使用attr()方法來獲取p元素的class:

var p_class = $("p").attr("class"); //獲取p元素的class

2、使用attr()方法來設置p元素的class:

$("p").attr("'class", "high"); //設置p元素的class為 "high"

大多數情況下,它是將原來的class替換為新的class,而不是在原來的基礎上追加新的class。

二、追加樣式

什么是追加class呢? 假如p元素原本的class為myClass,那么追加一個名叫high的class后,class屬性變為 “myClass high”,即myClass和high兩種樣式的疊加。JQuery提供了專門的addClass()方法來追加樣式。為首先在 style標簽里添加另一組樣式:

.high{ color:red; }
.another{ font-style:italic; color:blue; }

后在網頁中添加一個“追加class類”的按鈕,按鈕的事件代碼如下:

$("#btn_3").click(function(){
$("#nm_p").addClass("another"); // 追加樣式
});

后當單擊“追加class類”按鈕時,p元素樣式就會變為斜體,而先前的紅色字體也會變為藍色。此時p元素同時擁有兩個class值,即”high”和”another”。在CSS中有以下兩條規定。 1、如果給一個元素添加了多個class值,那么就相當于合并了它們的樣式。 2.如果有不同的class設定了同一樣式屬性,則后者覆蓋前者。 在上例中,相當于給p元素添加了如下樣式:

color : red; /* 字體顏色設置紅色*/
font-style:italic;
color:blue;

以上的樣式中,存在兩個“color”屬性,而后面的“color”屬性會覆蓋前面的“color”屬性,因此最終的“color”屬性的值為“blue”,而不是“red”。 移除樣式 如果用戶單擊某個按鈕時,要刪除class的某個值,那么可以使用與addClass()方法相反的removeClass()方法來完成,它的 作用是從匹配的元素中刪除全部或者指定的class。例如可以使用如下的JQuery代碼來刪除p元素中值為“high”的class:

$("p").removeClass("high"); //移除p元素中值為"high"的class

如果要把p元素的兩個class都刪除,就要使用兩次removeClass()方法:

$("p").removeClass("high").removeClass("another");

Query提供了更簡單的方法。 可以以空格的方式刪除多個class名:

$("p").removeClass("high another");

另外,還可以利用removeClass()方法的一個特性來完成同樣的效果。 當它不帶參數時,就會將class的值全部刪除:

$("p").removeClass(); //移除p元素的所有class

換樣式 JQuery中有一個方法toggle():

toggleBtn.toggle(function(){
//元素顯示 代碼③
}, function(){
//元素隱藏 代碼④
})

oggle()方法此處的作用是交替執行代碼③和代碼④兩個函數,如果元素原來是顯示的,則隱藏它:如果元素原來是隱藏的,則顯示它。此時,toggle()方法主要是控制行為上的重復切換。 另外JQuery還提供了一個toggleClass()方法控制樣式上的重復切換。如果類名存在則刪除它,如果類名不存在則添加它。例如對p元素進行toggleClass()方法操作。

$("p").toggleClass("another"); //重復切換類名“another”

不斷單擊“切換樣式”按鈕時,p元素的class的值就會在“myClass”和“myClass another”之間重復切換。 判斷是否含有某個樣式 hasClass()可以用來判斷元素中是甭含有某個class,如果有,則返回true,否則返回false。例如可以使用下面的代碼來判斷p元素中是否含有“another”的class:

$("p").hasClass("another");

這個方法是為了增強代碼可讀性面產生的。在JQuery內部實際上是調用了is()方法來完成這個功能的.該方法等價于:

view sourceprint? 1 $("p").is(".another"); //is("."+class);

以上就是雞西網站制作為大家介紹的jquery動態添加與刪除class樣式的方式,希望對需要制作網站的朋友有所幫助。

全部評論: 0
登錄沒有賬號 切換注冊

忘記密碼 ?

注冊已有賬號 切換登錄

15选5走势图开奖