JQuery中关于attr()、prop()两者之间的区别

attr:设置或返回被元素则值

prop:获取在匹配的元素集中的第一个元素的属性值。

区别:

  1. prop 如果获取多个被选元素那么只返回第一个被选元素的值;

  2.根据JQ源码(可自行查看),attr 是通过原生JS中setAttribute()方法设置或修改;prop则是通过document.getElementById(ele)[name]的方法设置或修改

   所以,获取标签的属性,如若标签自带的属性则使用prop方法会来的快些,attr则比较适用于我们自己的设置的属性

原文地址:https://www.cnblogs.com/from-sunshine/p/9639803.html

时间: 2024-10-15 14:20:15

JQuery中关于attr()、prop()两者之间的区别的相关文章

jquery中arrt()和prop()的区别

在jQuery中,attr()函数和prop()函数都用于设置或获取指定的属性,它们的参数和用法也几乎完全相同. 但不得不说的是,这两个函数的用处却并不相同.下面我们来详细介绍这两个函数之间的区别. 1.操作对象不同 很明显,attr和prop分别是单词attribute和property的缩写,并且它们均表示"属性"的意思. 不过,在jQuery中,attribute和property却是两个不同的概念.attribute表示HTML文档节点的属性,property表示JS对象的属性

Jquery 中 $('obj').attr('checked',true)失效的几种解决方案

1.$('obj').prop('checked',true) 2. $(':checkbox').each(function(){ this.checked=true; }) 为什么:attr为失效?因为checked属于为原型对象的属性.而attr在remove原型对象时会出错.原型对象指的是自身自带的,无法移除.prop会忽略这个错误.而attr操作的是普通非原型对象(可移除).js 的dom对象属性是可以随意增加的. Jquery 中 $('obj').attr('checked',tr

jQuery attr() prop() data()用法及区别

.attr(),此方法从jq1.0开始一直存在,官方文档写的作用是读/写DOM的attribute值,其实1.6之前有时候是attribute,有时候又是property..prop(),此方法jq1.6引入,读/写DOM的property..data(),此方法在jq1.2.3引入,作用是把任意的值读取/存储到DOM元素对应的jq对象上.从性能上对比,.prop() > .data() > .attr(),不同浏览器不同版本.data()和.attr()的性能关系有差异,不过.prop()总

jQuery中的bind() live() delegate()之间区别分析

jQuery中的bind() live() delegate()之间区别分析 首先,你得要了解我们的事件冒泡(事件传播)的概念,我先看一张图 1.bind方式 $('a').bind('click',function (){ alert('click'); }) 解析:这种方式最简单,jq扫描文档找出所有的a,让将函数绑定到每个元素的click事件上 2.live方式 $('a').live('click',function (){ alert('click'); }) 解析:jq将函数绑定到$

jQuery中hover与mouseover和mouseout的区别分析

本文实例分析了jQuery中hover与mouseover和mouseout的区别.分享给大家供大家参考,具体如下: 以前一直以为在jquery中其实mouseover和mouseout两个事件等于hover事件.两个没什么区别,应该是一样的.但昨天一个动画效果才让我见识了,这两个并不能等同. <div class="wrapper"> <div class="img"></div> <div class="tex

jQuery中关于height,innerWidth与outerWidth的区别

jQuery width() 和 height() 方法 width() 方法设置或返回元素的宽度(不包括内边距.边框或外边距). height() 方法设置或返回元素的高度(不包括内边距.边框或外边距). jQuery innerWidth() 和 innerHeight() 方法 innerWidth() 方法返回元素的宽度(包括内边距). innerHeight() 方法返回元素的高度(包括内边距). 公式为height()+padding*2 jQuery outerWidth() 和

jquery中map函数与each函数的区别

?jquery中的each函数和map函数的用法看起来差不多,但其实还是有一点区别的. ?其中一个重要的区别是,each返回的是原来的数组,并不会新创建一个数组.而map方法会返回一个新的数组.如果在没有必要的情况下使用map,则有可能造成内存浪费. ?例如: var items = [1,2,3,4]; ? $.each(items, function() { alert('this is ' + this); }); var newItems = $.map(items, function(

JavaScript学习笔记——jquery中html()、text()、val()的区别

.html()用为读取和修改元素的HTML标签 .text()用来读取或修改元素的纯文本内容 .val()用来读取或修改表单元素的value值. 这三个方法功能上的对比 .html(),.text(),.val()三种方法都是用来读取选定元素的内容:只不过.html()是用来读取元素的HTML内容(包括其Html标签),.text()用来读取元素的纯文本内容,包括其后代元素,.val()是用来读取表单元素的"value"值.其中.和.text()方法不能使用在表单元素上,而.val()

从一个bug说jquery中的attr和prop

为了方便描述,将问题简化如下: 先上代码 <form> <input type="checkbox">iqiyi</input> <input type="checkbox" checked="checked">letv</input> </form> <button type>showStatus</button> <script> $(

关于面试jquery中的 .attr() 和 .prop()的区别联系

目测很多人都不太清楚这个,我之前也是,知道这两个东西有点区别,但是却说不清楚,那么这里,我来详细的讲一下 大家都知道,html标签可以在 <> 尖括号里面直接写属性, 例如 <img src="fhc.jpg" alt="hello">, 那么在jquery中,要获取这个图片的地址该怎么做的呢 $('img').attr('src') 或者 $('img').prop('src') 都可以,好像没什么区别 但是有一点大家要注意, 在 html