原文 : HTML5 autofocus Attribut
原文發(fā)布時(shí)間: 2012年08月27日
翻譯時(shí)間: 2013年8月6日
HTML5 推出了一大堆精彩的東西給我們。
過去我們要用JavaScript和Flash完成的任務(wù),比如表單驗(yàn)證,輸入框空白提示(INPUT placeholders),客戶端文件上傳下載(client side file naming),以及 音頻/視頻播放,現(xiàn)在都可以用基本的HTML來完成了。另一個(gè)簡(jiǎn)單的HTML功能是現(xiàn)在允許我們?cè)陧撁婕虞d完成后自動(dòng)將輸入焦點(diǎn)定位到需要的元素,通過一個(gè)叫做 autofocus的屬性完成。
代碼就如下面一樣簡(jiǎn)單:
<!-- These all work! -->
<input autofocus="autofocus" />
<button autofocus="autofocus">Hi!</button>
<textarea autofocus="autofocus"></textarea>
當(dāng) autofocus 屬性設(shè)置以后,input,textarea,以及button 元素在頁面加載(load)以后,會(huì)被自動(dòng)選中(即獲得焦點(diǎn)). 我嘗試其他元素(比如h1 標(biāo)簽),tabIndex=0的情況,但是autofocus屬性在這些元素上根本沒有效果。
這個(gè)屬性在主要目的是獲取用戶輸入的頁面(pages whose main purpose is collecting information)是很有用的,比如google首頁(99%的情況是用來搜索)或者在線安裝向?qū)?比如WordPress's installer).而且最關(guān)鍵在于——不需要JavaScript參與。
完整的頁面代碼如下:
<!DOCTYPE HTML>
<html>
<head>
<title> HTML5 autofocus屬性測(cè)試 </title>
<meta name="Generator" content="EditPlus">
<meta name="Author" content="renfufei@qq.com">
<meta name="Description" content="original=http://davidwalsh.name/autofocus">
</head>
<body>
<!-- 原則上,以下三個(gè)元素,只能有一個(gè)設(shè)置autofocus 屬性,如果多個(gè)元素都設(shè)置,應(yīng)該是最后一個(gè)元素獲取了焦點(diǎn) -->
<!--
-->
<div>
<input autofocus="autofocus" />
<button autofocus="autofocus">Hi!</button>
<textarea autofocus="autofocus"></textarea>
</div>
</body>
</html>