javascript prop和attr的区别
在网上找了一些资料,通过自己去寻找,尝试,此次做一次总结。
1/ attr()
是jQuery 1.0版本就有的函数,
prop()
是jQuery 1.6版本新增的函数。毫无疑问,在1.6之前,你只能使用attr()
函数;1.6及以后版本,你可以根据实际需要选择对应的函数。
2/ attr()
函数操作的是文档节点的属性,因此设置的属性值只能是字符串类型,如果不是字符串类型,也会调用其toString()方法,将其转为字符串类型。
prop()
函数操作的是JS对象的属性,因此设置的属性值可以为包括数组和对象在内的任意类型。
3/ attr()用于设置或获取指定DOM元素所对应的文档节点上的属性
prop()用于设置或获取指定DOM元素(指JS对象,Element类型)上的属性
4/ attr():是attribute【特性】缩写,表示html文档节点的属性
prop():是property【属性】缩写,表示js对象的属性 即固有属性
5/ attr():对于checked,selected,disabled等属性返回的是字符串,该html文档节点若没有该属性,则返回undefined
prop()对于checked,selected,disabled等属性表示该属性实时状态的值(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();