HTML5新增属性data-*和js/jquery之间的交互及注意事项

(编辑:jimmy 日期: 2024/11/14 浏览:2)

HTML5新增属性data-*

书写实例

<div data-role="page"
     data-last-value="43"
     data-hidden="true"
     data-options='{"name":"John"}'>
</div>

1. 定义:

data-* 属性用于存储页面或应用程序的私有自定义数据。

data-* 属性赋予我们在所有 HTML 元素上嵌入自定义 data 属性的能力。

2. 注意点:

data-* 属性包括两部分:

  • 属性名不应该包含任何大写字母,并且在前缀 "data-" 之后必须有至少一个字符
  • 属性值可以是任意字符串

data-*属性和jQuery交互

使用jQuery中的.data()函数取用data-*属性值

console.log($("div").data('lastValue'));  //输出的值为:43
console.log($("div").data('role'));  //输出的值为:page

注意事项

data-**属性名格式驼峰命名改写

data-属性是在第一次使用这个数据属性后不再存取或改变(所有的数据值都在jQuery内部存储)

演示:
 

 console.log($("div").data('lastValue'));  //输出的值为:43
    $('div').data('lastValue',44);  //设置data-last-value=44
    $('div')[2]  //假设这是文档中的第3个div,我们输出这个dom
    //输出:<div data-role="page" data-last-value="43" data-hidden="true" data-options='{"name":"John"}'>

别怕,你再输出

 console.log($("div").data('lastValue'));  //输出的值为:44

  值只是存储在jQuery内部了

使用jQuery中.attr()函数取用data-*属性值

console.log($('div').attr('data-role')); //输出的值为:page
console.log($('div').attr('data-last-value')); //输出的值为:43

使用jQuery中.attr()函数设置data-*属性值

$('div').attr('data-emp',{'name':'zhangsan','age':23}); //给div添加一个data-emp的属性,属性值为一个json对象

注意:破折号要转化成驼峰命名

总结

以上所述是小编给大家介绍的HTML5新增属性data-*和js/jquery之间的交互,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。