HTML5在表单中新添加了很多功能,梦龙小站将慢慢为大家介绍,今天为大家介绍HTML5表单中新添加的有关焦点的属性。
HTML5添加了autofocus属性,这个属性在支持它的浏览器中,只要设置了这个属性,不用JavaScript动态获取焦点,就能自动把焦点移动到相应字段。小例子如下:
HTML代码
<input type="text" value="梦龙小站" autofocus />
预览效果
为了保证上面的代码在设置autofocus的浏览器中正常运行,咱们必须在JavaScript中检测是否设置了该属性。如果设置了,就不用调用focus()方法。
JavaScript代码
function load(){ var oInp = document.getElementById("inp"); if(oInp.autofocus != true){ oInp.focus(); } } window.addEventListener(‘load‘,load, false);
HTML代码
<input type="text" value="梦龙小站" autofocus /> <input id="inp" type="text" value="梦龙小站" />
预览效果
由于autofocus是一个布尔值属性,所以在支持的浏览器中它的值是”true”,在不支持的浏览器中,它的值是空字符串。上面的代码只有在autofocus不等于true的情况下才会调用focus()方法,从而保证了向前兼容的问题。支持autofocus属性的浏览器有Firefox 4+、Safari 5+、Chrome和Opera 9.6.
在默认情况下,只有表单可以获得焦点。对于其他标签元素来说,如果先将其tabIndex属性设置为-1,然后在调用focus()方法,也可以让这些元素获得焦点,但是只有Opera不支持这种技术。
HTML5果然让大家的代码生活变得很简单,一个小小的属性省去了一行甚至几行的JavaScript代码,让大家的代码生活变得轻松惬意。HTML5实战与剖析之表单——自动获取焦点属性(autofocus属性)就为大家介绍完了, 希望对大家在HTML5应用上有所帮助。