jQuery in action 3rd - Working with properties, attributes, and data
properties
properties 是 JavaScript 对象内在的属性,可以进行动态创建,修改等操作。
attributes
指的是 DOM 元素标记出来的属性,不是实例对象的属性。
例如:<img id="my-image" src="batter.png" title="This is an image" />,id、src、title 都是 img 元素的 attributes
[二者的区别]
attributes 返回的值类型总是 string 字符串;
properties 返回的值类型有 Booleans、numbers、objects
attr()

示例,
<img id="my-image" src="butter.png" data-custorm="some value" />
$('#my-image').attr('data-custom');
$('[title]').attr('title', function(index, prevValue) {
return prevValue + " " + index + " " + this.id;
});
$('input').attr({
value: ' ',
title: 'please enter a value'
});
removeAttr()

prop() 与 attr()的方法相同,

使用 data() 方法给 jQuery() 对象设置一些缓存值,同时,也可以操作 DOM 元素标记中以“data-*”开头的属性。
例如,<input id="mado" type="text" value="I'm a ..." data-level="foo" />
可以使用 $("#mado").attr("data-level"); 获取值,
也可以使用 $("#mado").data("level"); 获取值,此时的参数名称,可以去掉“data-”,jQuery 会自动识别。
data()方法的底层解析过程,实际如下:

可以使用 jQuery.data() 或者 $.data()方法保存一些全局的缓存数据,供后期使用。
例如,$.data('daji', ['a', 'b', 'c']);
比如,要给 ID 为 book 元素保存一个缓存值,那么可以如下:
$.data(document.getElementById('book'), 'price', 10);
如果要获取 book 元素的值,则:
$("#book").data('price');
data()的相关方法如下,

jQuery.hasData()
检测元素的标签中是否定义了 “data-*” 属性? 或者是否通过 data() 方法给元素对象设置过自定义数据?

jQuery in action 3rd - Working with properties, attributes, and data的更多相关文章
- jQuery in action 3rd - Operating on a jQuery collection
1.创建新 DOM 元素 $('<div>Hello</div>'); $('<img>', { src: 'images/little.bear.png', al ...
- jQuery in action 3rd - Selecting elements
jQuery(selector) / $(selector) selector 选择器有多种形式,下面是 #ID,.class,element jQuery 支持的 CSS 层级关系选择器 jQuer ...
- jQuery in action 3rd - Introducing jQuery
2014 年 10 月, jQuery Foundation 的总裁 Dave Methvin 发布了一篇博客(http://blog.jquery.com/2014/10/29/jquery-3-0 ...
- org.apache.jasper.JasperException: Expecting "jsp:param" standard action with "name" and "value" attributes
jasper 英 ['dʒæspə] 美 ['dʒæspɚ] 跟读 口语练习 n. 碧玉:墨绿色 n. (Jasper)人名:(德)雅斯佩尔:(西)哈斯佩尔 JasperException 异 ...
- Expecting "jsp:param" standard action with "name" and "value" attributes错误
错误信息如下: Servlet.service() for servlet [jsp] in context with path [/20161017] threw exception [/tag/s ...
- JQuery IN ACTION读书笔记之一: JQuery选择器
本章关注两个通过$()使用的常用功能: 通过选择器选择DOM元素,创建新DOM元素. 2.1 选择操作元素 JQuery采用了CSS的语法,而CSS的语法你可能已经很熟悉了.当然,JQuery也做了扩 ...
- Expecting "jsp:param" standard action with "name" and "value" attributes
浏览器访问报如下jsp标签错误: 根据提示,定位到jsp页面124行,代码如下: 查找原因,当<jsp:include></jsp:include>标签中没有参数时,不允许有空 ...
- jQuery源代码解析(1)—— jq基础、data缓存系统
闲话 jquery 的源代码已经到了1.12.0版本号.据官网说1版本号和2版本号若无意外将不再更新,3版本号将做一个架构上大的调整.但预计能兼容IE6-8的.或许这已经是最后的样子了. 我学习jq的 ...
- Properties文件,Data,Calendar类的使用
package cn.hncu.day9; import java.io.FileInputStream;import java.io.FileNotFoundException;import jav ...
随机推荐
- select标签非空验证,第一个option value=""即可
select标签非空验证,第一个option value=""即可,否则不能验证
- etc这个目录
自己对他的记忆最深了,因为每次你添加新的软件向电脑里时,软件都会有一个自己的配置文件,那么你修改这个配置文件的某个选项,就可以改变软件的某个功能. 或者是某个外设都有自己的配置文件. 其实这个配置文件 ...
- C#创建文件夹
string path = Server.MapPath("~/DefaultImg/newDir/63/");//获取文件路径 if (!Directory.Exists(pat ...
- Git 查看某个版本修改了哪些文件
. . . . . 查看某个版本提交了哪些文件,其实就是查看该版本与其上一个版本之间的差异,所以通过 git diff 命令来取得结果,并且对比的是要查看的版本与它的上一个版本的 commit 号. ...
- web程序员该学习什么
以我个人的观点分了几个级别,仅供参考 初级发展(学习期) 前端应该学习HTML javascript css 能够制造简单的前端页面满足自己的工作需求 后端应该学习asp.net or jsp or ...
- linux批量复制或删除同命名规则的文件
如图所示,有多个不同后缀的文件,但他们的前缀都是"QC_TZ.impute." 此时想批量复制图中的文件的话,可以考虑用命令行 cp QC_TZ.impute.* /your/de ...
- java写入和写出EXCEL(含源代码)
这两天帮老师做一个数据库,将所有实验交易的数据导入到数据库中,但是不想天天在实验室里面待着,气氛太压抑,就想着先把数据读进EXCEL中,哪天带到实验室导进去 数据原来是这样的,不同的实验有一个专门的文 ...
- iOS8 定位补充
iOS 8定位补充 iOS 8定位需要修改2个地方 1.info.plist文件中添加NSLocationAlwaysUsageDescription:描述信息 从iOS 8开始,用户定位分两种情况 ...
- String和string的区别(C#)
从位置讲: 1.String是.NET Framework里面的String,小写的string是C#语言中的string 2.如果把using System;删掉,没有大写的String了,Sys ...
- 使用spring配置quartz定时器
quartz是石英钟的意思,所以用这个名字来做定时器的框架名称再适合不过.一年前做项目的时候有用过这个框架,当时没有整理,今天刚好新的商城系统也需要定时器.想要达到的效果是:每天的固定时间,比如凌晨3 ...