JQuery中的prop 方法的使用

2021-10-08 15:59:15 字數 1050 閱讀 4049

在之前的 jquery 版本中,都是使用 attr() 來訪問物件的屬性,比如取乙個的 alt 屬性,就可以這樣做 $("#img").attr("alt");但是在某些時候,比如訪問 input 的 disabled 屬性的時候,會有些問題。在有些瀏覽器裡,只要寫了 disabled 屬性就可以,有些則要寫:disabled = 「disabled」。所以,從1.6版開始,jquery 提供新的方法 prop() 來獲取這些屬性。使用 prop() 的時候,返回值是標準屬性:true/false,比如:$("#checkbox").prop("disabled"),不會返回「disabled」或者「」,只會返回 true/false。當然賦值的時候也是如此。這樣,便統一了所有操作,無論是從語法還是語義上。

那麼,哪些屬性應該用 attr() 訪問,哪些應該用 prop() 訪問呢?

第乙個原則:只新增屬性名稱該屬性就會生效應該使用 prop() ;

第二個原則:只存在 true/false 的屬性應該使用 prop() ;

按照官方說明,如果是設定 disabled 和 checked 這些屬性,應使用 prop() 方法,而不是使用 attr() 方法。

上述文案:摘自書籍《鋒利的jquery(第2版)》中的內容。

【示例】jquery實現核取方塊的全選和全不選功能,使用 prop() 方法設定屬性值。

pan_junbiao的部落格_01

pan_junbiao的部落格_02

pan_junbiao的部落格_03

pan_junbiao的部落格_04

pan_junbiao的部落格_05

執行結果:

從示例中可以看出,使用的是 prop() 方法來設定核取方塊的屬性值,而不使用 attr() 方法,這是因為如果使用 attr() 方法會存在瀏覽器的相容問題。

jQuery中prop的用法

新增並移除名為 color 的屬性 button click function prop 方法設定或返回被選元素的屬性和值。當該方法用於返回屬性值時,則返回第乙個匹配元素的值。當該方法用於設定屬性值時,則為匹配元素集合設定乙個或多個屬性 值對。注意 prop 方法應該用於檢索屬性值,例如 dom 屬...

jQuery中prop的用法

新增並移除名為 color 的屬性 當該方法用於返回屬性值時,則返回第乙個匹配元素的值。當該方法用於設定屬性值時,則為匹配元素集合設定乙個或多個屬性 值對。注意 prop 方法應該用於檢索屬性值,例如 dom 屬性 如 selectedindex,tagname,nodename,nodetype,...

jQuery中prop方法和attr方法的區別

舊版本的jqury用attr方法來設定或者獲取元素的屬性,但是存在bug,所以新版本在此基礎上推出了prop方法,現在推薦使用prop這個方法來幹這個事情。jquery在1.6以上的版本新增了乙個prop方法,這個方法和attr的作用很像,但各司其責。以上的版本用 selector prop che...