说起这个属性,其实现在很常见了;怎么说呢,因为在一些框架都能看到他的身影!!!
比如Jquery mobile,里面非常频繁的使用了这个属性;
这个属性是哪里来的….当然是跟随最新的H5一起出来的…..
兼容性在PC端只能呢说一般般(目前.比较老式浏览器居多),,手机端支持还是比较OK的;
虽说是自定义属性,但是还是有一定的规格的,,比如前缀必须是data-[自定义属性];
比如
<div data-id="id"></div>
这货有什么用呢?用来操作数据的居多,比如给一款游戏弄一些额外的信息!!(data-level,data-score);
而操作数据一般有两种方式(原生JS和JQ):
1. 利用 getAttribute、setAttribute 存取 data[原生JS操作]
2. 利用 dataset API 存取 dataset [这种可以直接忽略data-,类似对象直接访问属性,也是JS操作的]
3. jQuery使用attr 和 data 依次等同于上面两种
在网上发现了一篇讲解比较详细的操作数据,可以瞄瞄
传送门: http://blog.netsh.org/posts/html-data-jquery_1812.netsh.html
邮箱: <input type="email" name="user_email" >
首页: <input type="url" name="user_url" >
页数: <input type="number" name="pagin" min="1" max="30" />
范围:<input type="range" name="range" min="5" max="25" />
<input type="[attribute]" name="user_week" />
[attribute]换成下面的属性就能看到各种效果了,,就是兼容性不怎么样,chrome下正常;
等到各大浏览器都支持良好了,就能取代JS日期选择器了…. 一条代码搞定一个日期选择;
<input type="search" name="user_search" >
联系方式: <input type="tel" name="user_tel" >
最喜欢的颜色: <input type="color" name="color" >
邮箱: <input type="email" name="user_email" required="required">
邮箱: <input type="email" name="user_email" required="required" placeholder="请输入您的邮箱!!">
电话号码: <input type="text" name="phone" pattern="[1-9]{11}" title="联系人号码" />
<form action="#" method="post" novalidate="true">
邮箱: <input type="email" name="user_email" required="required" placeholder="请输入您的邮箱!!" novalidate="true">
<input type="submit" />
</form>
<form action="#" method="post" novalidate="true">
邮箱: <input type="email" name="user_email" required="required" placeholder="请输入您的邮箱!!" novalidate="true" multiple="multiple">
<input type="submit" />
</form>
<input autofocus="autofocus" type="text">
<input autofocus="autofocus" type="text" autocomplete="no">
搜索引擎: <input type="url" list="url_list" name="link" />
<datalist id="url_list">
<option label="Bing" value="http://www.bing.com" />
<option label="Baidu" value="http://www.baidu.com" />
<option label="Microsoft" value="http://www.microsoft.com" />
</datalist>
<form action="#" method="post">
用户名: <input type="text" name="usr_name" >
加密方式: <keygen name="security" >
<input type="submit" >
</form>
<progress value="5" max="70">
</progress>
<div>您的额度:<meter value="50001" min="0" max="10000" low="1000" high="9000" optimum="6000">尽情耍!!</meter> </div>
表单来了一次大跃进,但是吧,,目前还是没法顺心的用,,一些浏览器没跟上,还有一些用户使用老版本浏览器;
所以这些新特性的使用,,哪怕再人性化,也只能慢慢来;过渡总需要时间的~~~