attr VS prop 区别】的更多相关文章

我们知道jquery中获取元素属性有两种常见的方法,一个是attr()方法,这个是用的比较多的,也是我们第一个想到的.另外一个就是prop()方法了,这个方法之前很少用到,它是jquery1.6之后新增的方法.那么这两个方法都是获取属性的,那么神马区别呢?闲话不多说,下面我们就来说说. 首先从单词解释来说attr和prop分别是单词attribute和property的缩写,它们均表示"属性"的意思.下面我们看一个简单的例子. <body> <input type=&…
.attr() : 获取匹配的元素集合中的第一个元素的属性的值 或 设置每一个匹配元素的一个或多个属性. •.attr( attributeName ) •.attr( attributeName ) •.attr( attributeName, value ) •.attr( attributeName, value ) •.attr( attributes ) •.attr( attributeName, function(index, attr) ) .prop() : 获取匹配的元素集中…
最近在写一个关于checkbox全选与取消全选的优化方法时,看到很多高手用到了.prop(). 于是在jquery的帮助文档查了一下,才知道这是在jquery 1.6.1中新加的方法,用来设置属性.但已经有了attr(),为何还要加入prop()呢?于是查阅了一下相关文档,总结一下. 下面主要写一下它们在何种情况下被使用: 一.checked,selected,readonly和disabled在1.6.1中和1.6之前的处理相同,也就是说还是直接用attr()即可,如 $(“:checkbox…
jquery 中 attr 和 prop 都表示 "属性",同样是属性为啥还要弄两个! attr 适用于自定义属性 如 定义一个懒加载用的src 栗子 <img class="img1" src="" data-src="1.png" />//attr$('.img1').attr('data-src');//prop$('.img1').prop('data-src');//undefind porp使用场景:标…
attr 能够增加.获取.删除页面属性.从页面中获取属性值: prop 用来获取.删除元素自带属性.从属性对象中获取属性值. attr 只获取静态属性值,就是页面加载时的最初的属性值: prop 可以获取动态属性值,通过js或页面操作改变元素的属性值之后,通过prop获取最新的属性值. attr 获取无值的属性时,返回的是 undefined prop 获取无值的属性时,返回的是 空字符串 在获取 checkbox 的 checked 属性时,使用 prop 获取到的是 true 或 false…
html(): html() 方法返回或设置被选元素的内容 (inner HTML). 当使用该方法读取多个值时,它会返回第一个匹配元素的内容. 当使用该方法设置一个值时,它会覆盖所有匹配元素的内容. 取元素内容的时候会把指定元素下面的代码标签也能获取到 text() 读取多个返回多个 和html()类似,但是只获取指定元素纯文本内容 val(): 返回或设置被选元素的值(读取多个只返回第一个),这点和html()类似 通过value属性设置和获取,常用于input元素,只能用在表单元素上 at…
<input type="checkbox" /> <script> $(function() { $('input').click(function() { $(this).attr('checked'); }); }); </script> 点击 checkbox,结果都是 undefined 把 attr换成 prop 显示是可以的. prop 和 attr的区别 具有 true 和 false 两个属性的属性,如 checked, selec…
今天写了个小程序,获取input[checked]属性,$('#check1').attr('checked'),结果返回undefined,查询了一番, 如果是具有true和false两个属性值的属性 如checked selected 或者disabled获取该属性值要用prop()返回boolean值,其他属性用attr().…
$("#all_check").click(function() { $("input[name='checkShop[]']").attr("checked",this.checked); }); var $subBox = $("input[name='checkShop[]']"); $subBox.click(function(){ $("#all_check").attr("checke…
比较经典的解释: 在处理html元素本身就带有的固有属性时,使用prop方法,对于html元素中,我们自己定义的dom属性时,使用attr方法. 而咱自己的理解是: attr会忠实的获取设置dom标签中的任何字符串,里面有的,都能读取,而且是什么就读取什么,不会隐身转换,没有的读取的值为‘undefined’. 而prop只能读取浏览器里提前封装好的dom属性,即固有属性,对于自定义的东东,不认识,也因为是提前和浏览器勾搭好了,所以能隐式转换,比如选择按钮的checked,它就知道返回ture.…