博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jquery里prop和attr的区别
阅读量:7220 次
发布时间:2019-06-29

本文共 995 字,大约阅读时间需要 3 分钟。

  本文通过具体的实例来讲述jquery里prop和attr的区别及使用方法。

在jquery里,我们要获取一个标签元素的属性,可以用attr或者prop,那么两者有什么区别呢?

其实很简单:

attr可以用来获取或生成“直接写在html标签里的属性”

prop可以用来获取元素的JS属性,如scrollHeight,offsetHeight等。

我们知道,scrollHeight是js里用来获取元素的完整高度,它是js的属性,并不是jquery属性,如果要在jquery里使用这个属性的话,需要把jquery对象转换成js对象,这样才能使用js的属性,而另一种方法就是用jquery里的prop函数

一个关于滚动条的实例:

jquery操作滚动条的在线演示-aijQuery.cn
这是div#aijquery1
这是div#aijquery2
这是div#aijquery2内的子DIV
这是div#aijquery2的底部

  

在上面的实例里,我们要操作滚动条滚动到元素的底部时,就需要取得元素的scrollHiehgt属性的值,我们可以直接用"$(div).prop('scrollHeight')"来获取,但如果换成attr就获取不到了。

如果我们深入jquery的源码来研究,就能发现,jquery里的attr是基于setAttributegetAttribute来实现的,所以用attr是获取不到js对象的属性值的;

而prop是通过对象实现的,如document.getElementById('div').name = 'one';

那么,在实际中,我们除了上面的情况外,我们什么时候用attr,什么时候用prop呢?

在我们要操作的是标签元素固有的一些属性时,推荐使用prop,固有属性指的是标签本身就有的一些属性,如a标签的href属性,img标签的src属性;

而在我们要操作的是自定义的一些属性时,推荐用attr;

转载地址:http://rhxym.baihongyu.com/

你可能感兴趣的文章
Stack and queue.
查看>>
linux 锁定重要文件 更改重要命令
查看>>
Jpcap过滤GTunnel程序数据包
查看>>
this和e.target
查看>>
C++中构造函数调用构造函数
查看>>
抽象工廠與工廠方法的區別
查看>>
消息中间件系列第2讲:如何进行消息队列选型?
查看>>
去除菜单项的加速键--‘&’符号
查看>>
html+css学习笔记 [基础1]
查看>>
SCOM发送邮件通知
查看>>
String对象
查看>>
Flask目录
查看>>
怎样熟练使用一项技术
查看>>
Uniform and Interpolator Packing的作用
查看>>
C# 对Excel的样式操作
查看>>
linux下测试磁盘的读写IO速度-简易方法
查看>>
名称的特殊处理(Name Mangling)
查看>>
三级菜单
查看>>
01迷宫 BFS
查看>>
sudo命令详解
查看>>