jQuery通过data(name,value)方法代理Dom对象实现数据缓存

很多时候我们需要在HTML标记上存储参数信息时,大部分采用在标记属性"alt"上赋值,例如:

//jQuery赋值语句
$('selector').attr('alt', 'data being stored'); 

//之后可以这样读取数据: 
$('selector').attr('alt');

使用”alt”属性来作为参数名存储数据其实对于HTML来说是不符合语义的,而且在使用长字串或存储一个JS方法时,会变得很困难。这时,我们可以使用jQuery的data方法来为页面中的某个元素存储数据,使用data方法可以避免在DOM中存储数据。

 

data(name, value)
返回元素上储存的相应名字的数据,value也可以是一个js函数。

 

这个data方法能让你自己命名数据的参数,更语义更灵活,你可以在页面上的任何元素存储数据信息
$("div").data("test", { first: 16, last: "pizza!" }); 
$("div").data("test").first //16; 
$("div").data("test").last //pizza!;
//移除存储数据
function removeData(name);

 

下面实现一个为DOM元素存储JS函数:
//函数定义
function mydata(funvar){return funvar||"data";}
$("#browser").data("mydatastr",mydata);
//之后的函数调用
alert($("#browser").data("mydatastr")("参数"));

posted @ 2011-05-21 02:38  飞虎cnblog  阅读(542)  评论(0编辑  收藏  举报
友情链接:技术迷 | JSM官方博客 | 阿旭博客 | 有声小说在线听