HTML data-*属性

原文链接

新的HTML5标准允许你在普通的元素标签里,嵌入类似data-*的属性,来实现一些简单数据的存取。它的数量不受限制,并且也能由javascript动态修改,也支持CSS选择器进行样式设置。这使得data属性特别灵活,也非常强大。有了这样的属性我们能够更加有序直观的进行数据预设或存储。

获取其值

原文链接

人们总喜欢往HTML标签上添加自定义属性来存储和操作数据。但这样做的问题是,你不知道将来会不会有其它脚本把你的自定义属性给重置掉,此外,你这样做也会导致html语法上不符合Html规范,以及一些其它副作用。这就是为什么在HTML5规范里增加了一个自定义data属性,你可以拿它做很多有用的事情。 你可以去读一下HTML5的详细规范,但这个自定义data属性的用法非常的简单,就是你可以往HTML标签上添加任意以
"data-"开头的属性,这些属性页面上是不显示的,它不会影响到你的页面布局和风格,但它却是可读可写的。 下面的一个代码片段是一个有效的HTML5标记:

1、复制代码

代码如下:

<div id="awesome" data-myid="3e4ae6c4e">Some awesome data</div>

可是,怎么来读取这些数据呢?你当然可以遍历页面元素来读取你想要的属性,但jquery已经内置了方法来操作这些属性。使用jQuery的.data()方法来访问这些"data-*" 属性。其中一个方法就是 .data(obj),这个方法是在 jQuery1.4.3版本后出现的,它能返回相应的data属性。 举个例子,你可以用下面的写法读取 data-myid属性值:

复制代码

代码如下:

var myid= jQuery("#awesome").data(‘myid‘); console.log(myid);

2、

你还可以在"data-*" 属性里使用json语法,例如,如果你写出下面的html:

复制代码

代码如下:

<div id="awesome-json" data-awesome=‘{"game":"on"}‘></div>

你可以通过js直接访问这个数据,通过json的key值,你能得到相应的value:

复制代码

代码如下:

var gameStatus= jQuery("#awesome-json").data(‘awesome‘).game; console.log(gameStatus);

3、

你也可以通过.data(key,value)方法直接给"data-*" 属性赋值。一个重要的你要注意的事情是,这些"data-*" 属性应该和它所在的元素有一定的关联,不要把它当成存放任意东西的存储工具。 译者补充:尽管"data-*"
是HTML5才出现的属性,但jquery是通用的,所以,在非HTML5的页面或浏览器里,你仍然可以使用.data(obj)方法来操作"data-*" 数据。

时间: 2024-08-29 13:43:42

HTML data-*属性的相关文章

如何设置data属性,如何设置data的值

如何设置data的类型,以及设置data的值 步骤: 首先声明一个参数,参数定义获取html标签名div,如下: var Div = document.getElementsByTagName('div')[0]; 接下来,我们定义一个data类型data-link;然后在js内通过setAttribute设置属性和值. Div.setAttribute('data-link','http://www.cnblogs.com/hao5599/'); // <div id="my_test&

html5 data属性的使用

html5 data属性定义和用法 <ul> <li data-animal-type="bird">Owl</li> <li data-animal-type="fish">Salmon</li> <li data-animal-type="spider">Tarantula</li> </ul> data-* 属性用于存储页面或应用程序的私有自定义

jquery的data()函数和html5的data属性

jquery的data()函数和html5的data属性:在html5中新增了一个自定义data属性,利用这个属性,可以添加任意的以"data-"开头的属性,这些属性不会再页面上显示,也不会影响任何原有的布局效果,并且此自定义属性是可读写的,例如: <div id="thediv" data-webname="蚂蚁部落">蚂蚁部落欢迎您</div> 以上代码就是使用自定义data属性的一个简单例子.可以使用jquery的d

data属性

本框架内置组件以及部分插件可以通过data属性来初始化并使用,通常通过data-toggle来调用API(toggle是触发器的意思,例如我们创建一个navtab标签可以通过为a的data-toggle="navtab").如无特殊说明,相关参数也通过data属性传递. data属性无法向JS传递含有大写字母的参数,如果参数是驼峰式(大小写混搭),则需要将大写字母转换为-加小写.如: reloadWarn ---> reload-warn maxAndLevel --->

关于data属性的一些常见的处理方式

我们知道在html标签上通用的属性有以下这些: 1.title 2.class 3.id 4.name 5.data-属性名 6.style 这些东西大部分都有其各自的效用,这里就不一一多说. 在jQuery的attr与prop提到过在IE9之前版本中如果使用property不当会造成内存泄露问题,而且关于Attribute和Property的区别也让人十分头痛,在HTML5中添加了data-*的方式来自定义属性,所谓data-*实际上上就是data-前缀加上自定义的属性名,使用这样的结构可以进

html 5实用特性之data属性

HTML 5之前,我们必须依赖于class和rel属性来存储需要在网站中使用的数据片段,这种做法有时会在网站的外观和实用性之间产生冲突.而HTML 5 Data属性的存在就能很好满足需要. HTML5标准允许你在普通的元素标签里,嵌入类似data-*的属性,来实现一些简单数据的存取.它的数量不受限制,并且也能由javascript动态修改,也支持CSS选择器进行样式设置,jquery也提供了支持的支持.这使得data属性特别灵活,也非常强大.有了这样的属性我们能够更加有序直观的进行数据预设或存储

HTML 5:你必须知道的data属性

原文:All You Need to Know About the HTML5 Data Attribute 译文:你必须知道HTML 5 的Data属性 译者:dwqs HTML 5的Data属性可以让你给元素自定义数据.这篇文章就是思考怎么更好的使用Data属性. 介绍 HTML 5之前,我们必须依赖于class和rel属性来存储需要在网站中使用的数据片段,这种做法有时会在网站的外观和实用性之间产生冲突.而HTML 5 Data属性的存在就能很好满足需要. 随着网站自身的数据越来越多,一些特

jquery data属性 attr vs data

html5的自定义data属性相信大家都不会陌生,有了它你可以绑定所需的数据到指定元素上.然后通过jquery设置.获取数据,简直开心的不行啊.想到设置.获取元素属性值,大家一定首先想到了jquery的.attr()方法,但是你一定知道jquery还有个.data()的方法.本人以前一直萌(傻)萌(傻)哒(的)以为这两个方法在处理data属性过程中实现的效果是一样的,只不过.data()方法官方更推荐使用(看名字就感觉人家是正规军).但后来本人在做项目的过程中发现,这两种方法处理data属性并不

Bootstrap入门(二十四)data属性

你可以仅仅通过 data 属性 API 就能使用所有的 Bootstrap 插件,无需写一行 JavaScript 代码.这是 Bootstrap 中的一等 API,也应该是你的首选方式. 话又说回来,在某些情况下可能需要将此功能关闭.因此,我们还提供了关闭 data 属性 API 的方法,即解除以 data-api 为命名空间并绑定在文档上的事件. 首先,我们引入CSS文件和JS文件 <link href="bootstrap.min.css" rel="styles

html5中data属性,dataset与jquery中的date()

首先是“你必须知道的28个HTML5特征.窍门和技术”里对date属性的分析: 我们现在可以很正式地让所有的HTML元素支持自定义属性.然而,以前,我们可能会这样: <h1 id=someId customAttribute=value>你好,我是以前的自定义属性<h1> …校验器会小题大做!但是现在,只要我们以”data”为前缀定义我们的自定义属性,盗版属性立马变成正牌的了.如果你发现你曾经把一个重要的数据附加在诸如class的属性上,可能为了JavaScript之用,那么,本属