本文分析了jQuery資料快取用法。分享給大家供大家參考。具體如下:
在jQuery的API幫助文件中,jQuery這樣描述資料快取的作用:用於在一個元素上存取資料而避免了循環引用的風險。
一、定義快取資料
使用$(selector).data(name,value)方法可以為jQuery物件定義快取資料。這些快取資料被存放在匹配的DOM元素集合中所有DOM元素中。
var $link = $('a'); $link.data('linkType', 'home');
說明:$(selector).data(name,value)可以在匹配的DOM元素上存放任何格式的數據,而不僅僅是字串。
二、取得快取資料
此時,只需要一個參數即可,該參數指定快取資料的名稱。
var linkType = $link.data('linkType'); //'home'
說明:如果讀取的快取資料不存在,則傳回值為undefined;如果jQuery集合指向多個元素,則只會傳回第一個元素的對應快取資料。
三、刪除快取資料
removeData()函數能夠刪除指定名稱的快取數據,並傳回對應的jQuery物件。
//删除缓存数据的同时,返回对应的jQuery对象。 var $a = $link.removeData('linkType');
四、jQuery資料快取的使用規範
隨著呼叫data()函數次數增多,或因使用不當,會使得cache物件急劇膨脹,最終影響程式的效能。
所以在使用jQuery資料快取功能時,應及時清理快取物件。 jQuery提供了removeData()函數手動清除快取資料。根據jQuery框架的運作機制,以下幾種情況不需要手動清除資料快取。
* 對elem執行remove()操作,jQuery會自動清除物件可能存在的快取。
* 對elem執行empty()操作,如果目前elem子元素存在資料緩存,jQuery也會清楚子物件可能存在的資料快取。
* jQuery複製節點的clone()方法不會複製data快取。
希望本文所述對大家的jQuery程式設計有所幫助。