操作元素屬性的方法有:1、操作class屬性的方法,包括addClass()、hasClass()、removeClass()、toggleClass();2、操作指定屬性的方法,包括attr()、prop()、removeAttr()。
本教學操作環境:windows7系統、jquery1.12.4版本、Dell G3電腦。
jQuery 屬性操作方法
方法 | 描述 |
---|---|
addClass() | 向匹配的元素新增指定的類名(class屬性值)。 |
attr() | 設定或返回匹配元素的屬性和值。 |
prop() | 設定或返回匹配元素的屬性和值。 |
hasClass() | 檢查匹配的元素是否擁有指定的類(class)。 |
removeAttr() | 從所有匹配的元素中移除指定的屬性。 |
removeClass() | 從所有匹配的元素中刪除全部或者指定的類(class)。 |
toggleClass() | 從匹配的元素中新增或刪除一個類(class)。 |
jQuery attr()和prop()方法返回或設定屬性
prop() 方法和 attr() 方法相似,都是用來獲取或設定元素的 HTML 屬性的,不過兩者也有著本質上的區別。
jQuery 官方建議:具有 true 和 false 這兩種取值的屬性,如 checked、selected 和 disabled 等,建議使用 prop() 方法來操作,而其他的屬性都建議使用 attr() 方法來操作。
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <script src="js/jquery-1.12.4.min.js"></script> <script> $(function () { $('input[type="radio"]').change(function(){ var bool = $(this).attr("checked"); if(bool){ $("p").text("你選擇的是:" + $(this).val()); } }) }) </script> </head> <body> <div> <label><input type="radio" name="fruit" value="蘋果" />蘋果</label> <label><input type="radio" name="fruit" value="香蕉" />香蕉</label> <label><input type="radio" name="fruit" value="西瓜" />西瓜</label> </div> <p></p> </body> </html>
在這個例子中,我們其實是想通過$(this).attr("checked")
判斷單選框是否被選中,如果被選中,就獲取該單選框的 value 值。可是執行程式碼後發現:完全沒有效果!這是為什麼呢?
實際上,對於表單元素的 checked、selected、disabled 這些屬性,我們使用 attr() 方法是沒法獲取的,而必須使用 prop() 方法來獲取。因此,我們把 attr() 方法替換成 prop() 方法就有效果了。
其實,prop()方法的出現就是為了彌補 attr() 方法在表單屬性操作中的不足。記住一句話:如果某個屬性沒法使用 attr() 方法來獲取或設定,改換 prop() 方法就可以實現。
removeAttr()方法刪除屬性
在 jQuery 中,我們可以使用 removeAttr() 方法來刪除元素的某個屬性。
語法:
$().removeAttr("屬性名")
jQuery 類名操作
類名操作,指的是為元素新增一個 class 或刪除一個 class,從而整體控制元素的樣式。
在 jQuery 中,CSS 類名操作共有以下 3 種。
新增 class。
刪除 class。
切換 class。
addClass()方法新增class
在 jQuery 中,我們可以使用 addClass() 方法為元素新增一個 class。
語法:
$().addClass("類名")
removeClass()方法刪除class
在 jQuery 中,我們可以使用 removeClass() 方法來為元素刪除一個 class。
語法:
$().removeClass("類名")
toggleClass()方法切換class
在 jQuery 中,我們可以使用 toggleClass() 方法為元素切換類名。toggle,其實就是「切換」的意思,之後我們會大量接觸這個單詞,例如 toggle()、slideToggle() 等,小夥伴要留意和對比一下。
語法:
$().toggleClass("類名")
toggleClass() 方法用於檢查元素是否有某個 class。如果 class 不存在,則為元素新增該 class;如果 class 已經存在,則為元素刪除該 class。
【推薦學習:、】
以上就是jquery操作元素屬性的方法是什麼的詳細內容,更多請關注TW511.COM其它相關文章!