javascript prop和attr的区别
在網(wǎng)上找了一些資料,通過自己去尋找,嘗試,此次做一次總結(jié)。
1/? attr()是jQuery 1.0版本就有的函數(shù),
? ?prop()是jQuery 1.6版本新增的函數(shù)。毫無疑問,在1.6之前,你只能使用attr()函數(shù);1.6及以后版本,你可以根據(jù)實際需要選擇對應的函數(shù)。
2/? ? ? attr()函數(shù)操作的是文檔節(jié)點的屬性,因此設置的屬性值只能是字符串類型,如果不是字符串類型,也會調(diào)用其toString()方法,將其轉(zhuǎn)為字符串類型。
? ?prop()函數(shù)操作的是JS對象的屬性,因此設置的屬性值可以為包括數(shù)組和對象在內(nèi)的任意類型。
3/? ? ? attr()用于設置或獲取指定DOM元素所對應的文檔節(jié)點上的屬性
? ? ? ? ?prop()用于設置或獲取指定DOM元素(指JS對象,Element類型)上的屬性
4/? ? ???attr():是attribute【特性】縮寫,表示html文檔節(jié)點的屬性? ?
? ? ? ? ? ?prop():是property【屬性】縮寫,表示js對象的屬性 即固有屬性
5/? ? ?attr():對于checked,selected,disabled等屬性返回的是字符串,該html文檔節(jié)點若沒有該屬性,則返回undefined
? ? ? ? prop()對于checked,selected,disabled等屬性表示該屬性實時狀態(tài)的值(true,false)
6/? ? ?attr("屬性名")//獲取屬性值,attr(“屬性名”,“屬性值”) //賦值? ? ? removeAttr("屬性名")? //刪除屬性
? ? ? ? ?prop("屬性名")//獲取屬性值,prop(”屬性名“,"true/false") //賦值? ?removeProp(”屬性名“) //刪除屬性
? ? 以下是常見的固有屬性屬性
? ? ? ?checked :推薦使用prop
? ? ? ? ? ? ? ? 賦值:prop('checked',true/false)? ? ? ?attr("checked",true/false/'checked')? ? ? ? ??
? ? ? ?disabled? ?推薦使用prop
? ? ? ? ? ? ? ? 賦值:? prop('disabled',false/true)? ? ? attr("disabled",true/false/'disabled')? ? ?
? ? ? ?selected? ? 推薦使用prop
? ? ? ? ? ? ? ?賦值:? prop('selected',false/true)? ? ? attr("selected",true/false/'selected')? ?
? ? ? ?readonly
? ? ? ?mulitiple
? ? ? ?hidden
? ? ? ?lang
? ? ? ?accesskey
? ? ? ? class
? ? ? display: 這是style設置即:css屬性,所以用dom.css();
? ? ??
轉(zhuǎn)載于:https://www.cnblogs.com/zmztya/p/10195996.html
總結(jié)
以上是生活随笔為你收集整理的javascript prop和attr的区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: learn python the har
- 下一篇: IDEA实现到JSTL