老生常谈JQuery data方法的使用


Posted in Javascript onSeptember 09, 2016

(-1)说明

我用的是chrome49,这个方法涉及到JQuery版本问题,我手里有3.0的,有1.9.1,后面将1.9.1及其以前的称为低版本,3.0称为高版本

测试例子用到的showMessage方法如下

showMessage.i = 0; 
function showMessage(object) 
{ 
var body = $("body")[0]; 

var $p =$("#debugp"); 
 

if($p.length==0) 

{ 


$p = $("<p/>").attr("id","debugp"); 


$(body).prepend($p); 

} 

$p[0].innerHTML += "<br/>"+(showAttribute.i++)+" | "+object; 
}

(0)$.data(obj,key,value)

key值为字符串类型,为数字、对象(var lol={}),是没有意义的,value值可以为普通类型,当为引用类型时传递的是引用而不是克隆

a.

var obj = {"name":"寒冰射手","age":"12"};
$.data(obj,"height",165);
showMessage($.data(obj,"height"));

$.data实际将数据放在了对象属性上,类似于obj.sex="女",无论你通过$.data添加几个key给obj,在obj只会多出一个类似于jQuery300082932543555993442

300082932543555993442是jQuery产生的随机数,它指向一个对象,对象里面通过key-value的形式存储着你添加的数据

低版本可以通过for-in遍历出jQuery300082932543555993442,高版本只能通过debug工具查看了

b.

当value是一个对象时,传递的是引用

var husband = ["蛮族之王"];
var obj = {"name":"寒冰射手","age":"12"};
$.data(obj,"husband",husband);
$.data(obj,husband)[0] = "遁地龙卷风";
showMessage($.data(obj,husband));//输出   遁地龙卷风

(2)$(selector).data(key,value)

$("#lol").data("name","寒冰射手");

showMessage($("#lol").data("name"));

$(selector).data将数据绑定在HTML DOM元素上,剩下的特性与$.data方法一样,不过可以通过for-in得到添加的对象

以上这篇老生常谈JQuery data方法的使用就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery 获取json数据实现代码
Apr 27 Javascript
javascript原型链继承用法实例分析
Jan 28 Javascript
jquery实现对联广告的方法
Feb 05 Javascript
再次谈论Javascript中的this
Jun 23 Javascript
AngularJS入门教程之双向绑定详解
Aug 18 Javascript
在网页中插入百度地图的步骤详解
Dec 02 Javascript
浅析Jquery操作select
Dec 13 Javascript
JS弹性运动实现方法分析
Dec 15 Javascript
详解微信小程序开发之城市选择器 城市切换
Jan 17 Javascript
深入浅析ES6 Class 中的 super 关键字
Oct 20 Javascript
使用RxJS更优雅地进行定时请求详析
Jun 02 Javascript
你知道JavaScript Symbol类型怎么用吗
Jan 08 Javascript
Vuejs第十一篇组件之slot内容分发实例详解
Sep 09 #Javascript
jQuery内容过滤选择器用法示例
Sep 09 #Javascript
Vue.js动态组件解析
Sep 09 #Javascript
JS判断form内所有表单是否为空的简单实例
Sep 09 #Javascript
jQuery查找节点并获取节点属性的方法
Sep 09 #Javascript
js控制文本框只能输入中文、英文、数字与指定特殊符号的实现代码
Sep 09 #Javascript
js判断所有表单项不为空则提交表单的实现方法
Sep 09 #Javascript
You might like
重置版战役片段
2020/04/09 魔兽争霸
php继承的一个应用
2011/09/06 PHP
php实现单链表的实例代码
2013/03/22 PHP
关于PHP转换超过2038年日期出错的问题解决
2017/06/28 PHP
PHP面向对象程序设计之多态性的应用示例
2018/12/19 PHP
laravel框架中控制器的创建和使用方法分析
2019/11/23 PHP
[Web]防止用户复制页面内容和另存页面的方法
2009/02/06 Javascript
JavaScript弹出新窗口并控制窗口移动到指定位置的方法
2015/04/06 Javascript
JavaScript获取中英文混合字符串长度的方法示例
2017/02/04 Javascript
js 动态生成html 触发事件传参字符转义的实例
2017/02/14 Javascript
详谈Angular路由与Nodejs路由的区别
2017/03/05 NodeJs
vue-cli之router基本使用方法详解
2017/10/17 Javascript
解决npm安装Electron缓慢网络超时导致失败的问题
2018/02/06 Javascript
解决Nodejs全局安装模块后找不到命令的问题
2018/05/15 NodeJs
Node.js安装详细步骤教程(Windows版)详解
2019/09/01 Javascript
浅析JavaScript 函数柯里化
2020/09/08 Javascript
[00:02]DOTA2新版本使用PA至宝后暴击展示
2014/11/19 DOTA
Python交换变量
2008/09/06 Python
python实现在pickling的时候压缩的方法
2014/09/25 Python
python条件变量之生产者与消费者操作实例分析
2017/03/22 Python
如何利用python读取micaps文件详解
2020/10/18 Python
可打印的优惠券、杂货和优惠券代码:Coupons.com
2018/06/12 全球购物
CK澳大利亚官网:Calvin Klein澳大利亚
2020/12/12 全球购物
纯净、自信、100%的羊绒服装:360Cashmere
2021/02/20 全球购物
简述索引存取方法的作用和建立索引的原则
2013/03/26 面试题
JavaScript实现页面动态验证码的实现示例
2021/03/23 Javascript
英文版网络工程师求职信
2013/10/28 职场文书
技术副厂长岗位职责
2013/12/26 职场文书
商场中秋节广播稿
2014/01/17 职场文书
快递员岗位职责
2014/09/12 职场文书
2014优秀大学生简历自我评价
2014/09/15 职场文书
小学重阳节活动总结
2015/03/24 职场文书
2015年社区工会工作总结
2015/05/26 职场文书
春风化雨观后感
2015/06/11 职场文书
2015年成本会计工作总结
2015/10/14 职场文书
2019最新校园运动会广播稿!
2019/06/28 职场文书