H5 新定义的<input>好用的属性
1. autofocus,页面加载时让元素获取焦点。User name: <input type="text" name="user_name"autofocus="autofocus"
/>2.required 属性 必须在提交之前填写输入域(不能为空)。
注释:required 属性适用于以下类型的 <input> 标签:text, search, url, telephone, email, password, date pickers, number, checkbox, radio 以及 file。
实例
Name: <input type="text" name="usr_name"
required="required"
/>3.list 属性
list 属性规定输入域的 datalist。datalist 是输入域的选项列表。
注释:list 属性适用于以下类型的 <input> 标签:text, search, url, telephone, email, date pickers, number, range 以及 color。
实例
Webpage: <input type="url"list="url_list"
name="link" /> <datalist id="url_list"> <option label="W3Schools" value="http://www.w3school.com.cn" /> <option label="Google" value="http://www.google.com" /> <option label="Microsoft" value="http://www.microsoft.com" /> </datalist>在标记上添加丰富的上下文数据自定义数据属性是在HTML5中新加入的一个特性。简单来说,自定义数据属性规范规定任何以data-开头属性名并且赋值。自定义数据属性是为了保存页面或者应用程序的私有自定义数据,这些自定义数据属性保存进DOM中,对于整个DOM的布局和表现无任何影响,但是却可以方便操控整个网页的交互以及想要表达的效果。
比如我们想要统计一个页面玩家的排行榜,但是DOM页面的原生标签并没有提供这样的一个类似的属性。这时,就可以创建一个data-rank数据属性,保存玩家的分数,利用JS去控制属性的赋值以及逻辑分析,最终达到想要的效果。
对于数据属性的值的获取和设置,JQ提供了两种方法attr()和data()。
这两种方法,当只传递一个参数(标签的属性)的时候,可以获取该属性的值;
$(selector).attr(attribute)当传递两个参数的时候,可以设置一个标签的属性以及值,$(selector).attr(attribute,value)对于原生的属性:
<a id="a_one" href="http://blog.csdn.net/it_surfer"></a>
<a id="a_two"></a>
则利用$("#a_one").attr("href")可以获取到id为a_one的a标签的连接地址:http://blog.csdn.net/it_surfer;
利用$("#a_two").attr("href","http://blog.csdn.net/it_surfer"),就可以设置id为a_two的a标签的连接地址为:http://blog.csdn.net/it_surfer
对于自定义数据属性:
<a id="a_one" href="http://blog.csdn.net/it_surfer" data-num=50></a>此处给a标签加了一个自定义数据属性data-num,用来统计访问改连接的次数
则可以利用$("#a_one").attr("data-num",80)来给id为a_one的a标签来给data-num赋值
也可以利用$("#a_one").data("num",80)来给id为a_one的a标签来给data-num赋值
同理,可以利用$("#a_one").attr("data-num")来获取id为a_one的a标签的data-num的值
也可以利用$("#a_one").data("num")获取id为a_one的a标签的data-num的值
注意attr()和data()方法引用的属性名的形式不同。
示例如下*使用自定义数据和一个事件监听器为一组元素添加提示消息:
<div class="container"> <h1>Using a JavaScript Delegate with Stored Custom Data</h1> <p>Click on one of the selections below to find out more info about your character:</p> <ul id="myList"> <li data-discription="Most powerful goblin in entire kingdom" >Ludo</li> <li data-discription="Ruler over all goblins big and small" >Jareth the Gobblin King</li> <li data-discription="Only person who can put a stop to the Goblin King" >Sarah</li> <li data-discription="Unsung hero of the goblin kingdom" >Hoggle</li> </ul> <p id="displayTarg" class="well"></p> </div> <!-- /container --> <script> var mainElement = document.getElementById('myList'); var discriptionTarget = document.getElementById('displayTarg'); mainElement.addEventListener('click', function(e){ var discription = e.target.getAttribute('data-discription'); //remember we use getAttribute instead of dataset.discription due to its backwards compatability discriptionTarget.innerHTML = discription; }); </script>
自定义数据属性允许我们将data-属性添加到元素上,以“内联”数据。当需要访问DOM元素上附加的数据时,JavaScript的事件分发机制就会显得非常强大