詳談$.data()的用法和作用,詳談.data
jQuery.data 即$.data()。向元素附加資料,然後取回該資料
這是提供給用戶端程式員使用的方法,它同時是setter/getter。
傳一個參數,返回附加在指定元素的所有資料,即thisCachejQuery.data(el); // thisCache
傳二個參數,返回指定的屬性值jQuery.data(el, 'name');
傳三個參數,設定屬性及屬性值jQuery.data(el, 'name', 'jack');jQuery.data(el, 'uu', {});
傳四個參數,第四個參數pvt僅提供給jQuery庫自身使用。即jQuery._data方法中傳true。因為jQuery的事件模組嚴重依賴於jQuery.data,為避免人為的不小心重寫在這個版本中加入的
$.data("#blog_stats","name","lixuekai")jquery.js:2 Uncaught TypeError: Cannot set property 'toJSON' of undefined(…)data @ jquery.js:2(anonymous function) @ VM913:1var s = $("#blog_stats")undefineds[<div id="blog_stats">…</div>]$.data(s,"name","lixuekai")"lixuekai"$.data(s,"name")"lixuekai"$.data(s)Object {name: "lixuekai"}$.hasData(s)
true上面代碼的調試圖如下:
jQuery.hasData 用來判斷HTMLElement或JS對象是否具有資料。返回true或false。即如果調用了jQuery.data方法添加了屬性,則返回true。
升級簡單的寫法:selector.data("key","value").
實測如:
這是一個位置給裝了2個對象資料。然後看看效果如何。
就看吧,代碼就不貼啦。
//從被選元素中返回附加的資料。$(selector).data(name)//向被選元素附加資料。$(selector).data(name,value)//使用帶有成對的名稱和數值的對象向被選元素添加資料。(上面傳簡單的key value 索引值對,這個直接給對象,不用一個個傳)$(selector).data(object)
以上這篇詳談$.data()的用法和作用就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援幫客之家。