jquery中attr和prop的區別

jquery1.6中新加了一個方法prop(),一直沒用過它,官方解釋只有一句話:獲取在匹配的元素集中的第一個元素的屬性值。jquery

你們都知道有的瀏覽器只要寫disabled,checked就能夠了,而有的要寫成disabled = "disabled",checked="checked",好比用attr("checked")獲取checkbox的checked屬性時選中的時候能夠取到值,值爲"checked"但沒選中獲取值就是undefined。瀏覽器

jq提供新的方法「prop」來獲取這些屬性,就是來解決這個問題的,之前咱們使用attr獲取checked屬性時返回"checked"和"",如今使用prop方法獲取屬性則統一返回true和false。async

那麼,何時使用attr(),何時使用prop()?
1.添加屬性名稱該屬性就會生效應該使用prop();
2.是有true,false兩個屬性使用prop();
3.其餘則使用attr();
項目中jquery升級的時候你們要注意這點!code

如下是官方建議attr(),prop()的使用:ip

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() )
相關文章
相關標籤/搜索