关于$.data(element,key,value)与ele.data.(key,value)的区别

 
  
<!doctype html>
<html>
<head>
<meta charset="utf-8">   
<title>测试代码</title>
<script src="../jQuery.js"></script>
</head>
<body>
<div id="test1">test1</div>   
<div id="test2">test2</div>   
</body> 
<script> 
var a=$("div");   
var b=$("div");//a不等于b。   

$("#test1").click(function(){      
//首先使用data(key,value)用法。   
$(a).data("a","1");//分别在a和b上保存Key一样的数据,   
$(b).data("a","2");// 看它是否会覆盖前面的,虽然是保存在不同对象上。   
alert($(a).data("a"));//你猜到答案了吗,这里输出的是2;是不是有点意外?     
alert($(b).data("a"));//这里也是2; 
alert("a是否等于b");
alert(a===b);   //false
 });  

//使用jQuery.data(element,key,value)来存放数据。 
$("#test2").click(function(){ 
$.data(a,"b","3");//分别在a和b上保存Key一样的数据,   
$.data(b,"b","4");// 看它是否会覆盖前面的,虽然是保存在不同对象上。   
alert($.data(a,"b"));//应该你能猜答案吧,输出3   
alert($.data(b,"b"));//这输出4    
}) ;  
</script> 
</html>

这里我个人是按指针理解的,data(key,value)时,a与b公用指针“a”,指向同一数据,所以会覆盖。而data(element,key,value)时,虽然指针名是一样的,但分别隶属于a与b,是两个不同的指针,指向2个数据,所以单独存在,互不影响。

 

转载于:https://www.cnblogs.com/keepStudying/p/6184654.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值