query1.6中新加了乙個方法prop(),一直沒用過它,官方解釋只有一句話:獲取在匹配的元素集中的第乙個元素的屬性值。
大家都知道有的瀏覽器只要寫disabled,checked就可以了,而有的要寫成disabled = "disabled",checked="checked",比如用attr("checked")獲取checkbox的checked屬性時選中的時候可以取到值,值為"checked"但沒選中獲取值就是undefined。
jq提供新的方法「prop」來獲取這些屬性,就是來解決這個問題的,以前我們使用attr獲取checked屬性時返回"checked"和"",現在使用prop方法獲取屬性則統一返回true和false。
那麼,什麼時候使用attr(),什麼時候使用prop()?
1.新增屬性名稱該屬性就會生效應該使用prop();
2.是有true,false兩個屬性使用prop();
3.其他則使用attr();
專案中jquery公升級的時候大家要注意這點!
以下是官方建議attr(),prop()的使用:
attribute/property
.attr()
.prop()
accesskey
√align
√async√√
autofocus√√
checked√√
class
√contenteditable
√draggable
√href√id
√label
√location ( i.e. window.location )√√
multiple√√
readonly√√
rel√
selected√√
src√
tabindex
√title
√type
√width ( if needed over.width()
)
√
JQ中attr 和prop 的使用區別
1.attr 是獲取物件屬性的,比如獲取乙個的alt屬性 img attr alt 2.對於不用寫值的屬性比如 disabled selected checked 使用prop disabled在瀏覽器中寫法不一致,有些直接寫 disabled 有寫需要這樣寫 disabled disabled 使...
簡述jq中attr 和prop 的區別
attr,prop都是屬性的意思,那他們有什麼區別呢?我們先來看一下jquery的部分原始碼 attr部分 1 attr function elem,name,value,pass 8if pass jquery.isfunction jquery.fn name 11 fallback to pr...
JQ中prop與attr區別
一 attr和prop區別 attr 是從頁面搜尋獲得元素值,所以頁面必須明確定義元素才能獲取值,相對來說較慢。prop是從屬性物件中取值,屬性物件中有多少屬性,就能獲取多少值,不需要在頁面中顯示定義。二 attr和prop怎麼選擇?對於html元素本身就帶有的固有屬性,在處理時,使用prop方法。...