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的更多相关文章

  1. jQuery in action 3rd - Operating on a jQuery collection

    1.创建新 DOM 元素 $('<div>Hello</div>'); $('<img>', { src: 'images/little.bear.png', al ...

  2. jQuery in action 3rd - Selecting elements

    jQuery(selector) / $(selector) selector 选择器有多种形式,下面是 #ID,.class,element jQuery 支持的 CSS 层级关系选择器 jQuer ...

  3. jQuery in action 3rd - Introducing jQuery

    2014 年 10 月, jQuery Foundation 的总裁 Dave Methvin 发布了一篇博客(http://blog.jquery.com/2014/10/29/jquery-3-0 ...

  4. org.apache.jasper.JasperException: Expecting "jsp:param" standard action with "name" and "value" attributes

      jasper  英 ['dʒæspə]  美 ['dʒæspɚ] 跟读 口语练习 n. 碧玉:墨绿色 n. (Jasper)人名:(德)雅斯佩尔:(西)哈斯佩尔 JasperException 异 ...

  5. Expecting "jsp:param" standard action with "name" and "value" attributes错误

    错误信息如下: Servlet.service() for servlet [jsp] in context with path [/20161017] threw exception [/tag/s ...

  6. JQuery IN ACTION读书笔记之一: JQuery选择器

    本章关注两个通过$()使用的常用功能: 通过选择器选择DOM元素,创建新DOM元素. 2.1 选择操作元素 JQuery采用了CSS的语法,而CSS的语法你可能已经很熟悉了.当然,JQuery也做了扩 ...

  7. Expecting "jsp:param" standard action with "name" and "value" attributes

    浏览器访问报如下jsp标签错误: 根据提示,定位到jsp页面124行,代码如下: 查找原因,当<jsp:include></jsp:include>标签中没有参数时,不允许有空 ...

  8. jQuery源代码解析(1)—— jq基础、data缓存系统

    闲话 jquery 的源代码已经到了1.12.0版本号.据官网说1版本号和2版本号若无意外将不再更新,3版本号将做一个架构上大的调整.但预计能兼容IE6-8的.或许这已经是最后的样子了. 我学习jq的 ...

  9. Properties文件,Data,Calendar类的使用

    package cn.hncu.day9; import java.io.FileInputStream;import java.io.FileNotFoundException;import jav ...

随机推荐

  1. 限制scrollView的上下移动

    只要把scrollView.contentSize 中的hight高设为0,就不会上下移动了.如果不想水平移动,就把宽设0.

  2. $.grep(array, callback, [invert])过滤,常用

    $.grep(array, callback, [invert])过滤,常用 解释: 使用过滤函数过滤数组元素.此函数至少传递两个参数(第三个参数为true或false,对过滤函数返回值取反,个人觉得 ...

  3. 分享一个Object.defineProperties 定义一个在原对象可读可写的方法

    function A(){ this.name = 'hellow word'; } Object.defineProperties( A.prototype,{ doSomething2 : { v ...

  4. mac上执行sed的编辑 -i命令报错sed: 1: "test.txt": undefined label ‘est.txt’或sed: 1: "2a\test\": extra characters after \ at the end of a command

    问题一 sed编辑命令:[sed -i 's/a/b/g' test.txt]   报错:sed: 1: "test.txt": undefined label 'est.txt' ...

  5. Python学习资料下载地址(转)

    [转]Python学习资料和教程pdf 开发工具: Python语言集成开发环境 Wingware WingIDE Professional v3.2.12 Python语言集成开发环境 Wingwa ...

  6. design pattern

    1. visitor design pattern http://butunclebob.com/ArticleS.UncleBob.IuseVisitor

  7. jquery 时间控件怎么能禁止输入只能选择日期?

    jsp一个input输入框用的是easyui时间控件,现在问题是如何是这个input只能点击选择日期,而禁止手动输入 解决方法::: 在日期的input标签里面添加::::editable=" ...

  8. linux 软件的安装与Tarball

    Linux 系统上真正认识的可执行文件其实是二进制文件 ( binary program ) shell scripts 只是利用 shell (例如 bash) 这支程序的功能进行一些判断式,而最终 ...

  9. 转载 --ios 模型-setValuesForKeysWithDictionary

    应用场景:app请求后端数据,返回的数据是JSON形式,如: { "is_favor" = 0; "is_follow" = 0; "is_prais ...

  10. ABP 仓储VIEW实现

    每个view实体加个ID 对应实体属性配置到View的列 View添加一列类似自增序列 ROW_NUMBER() OVER(ORDER BY getdate()) AS ID codefirst时 删 ...