JQuery data方法的使用-遁地龍捲風

來源:互聯網
上載者:User

標籤:

(-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方法的使用-遁地龍捲風

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.