很多时候,在填写完资料、帐号、密码等之后,用户习惯性地会按Enter(回车键)表示完成。
为了做好用户体验,我们必须在此监听这一动作。
具体逻辑是,在前面的input标签里监听onkeydown事件,当用户输入完之后,按回车键,立马跳到下一个输入框,到最后一个输入框输入完成时,就按回车,focus到提交标签那里。
第一种是:在input标签里面添加onkeydown事件。
<input οnkeydοwn=”jump(下一个input的id)” type=”text” id=”name” />
<input οnkeydοwn=”jump(下一个input的id)” type=”text” id=”pwd” />
<input οnkeydοwn=”jump(下一个input的id)” type=”text” id=”code” />
<input  type=”submit” id=”submit” value=”登录”/>
<script type=”text/javascript”>
function jump(next){
var nextInp = document.getElementById(next);
var event = arguments.callee.caller.arguments[0] || window.event;
if(event.keyCode == 13){//判断是否按了回车,enter的keycode代码是13,想看其他代码请猛戳这里。
nextInp.focus();
}
}
</script>
第二种是:在js里面添加onkeydown监听事件(监听方法比较多,这里只列举一种)。
这里只列举一个标签的事件,其他代码自己再组织吧。
<input type=”text” id=”code” />
<input type=”submit” id=”btnS” value=”登录”/>
<script type=”text/javascript”>
var code= document.getElementById(“code”);
var btnS= document.getElementById(“btnS”);
function jump(event){
var event = event || window.event;//这里的event兼容跟上面不同,关于event的兼容,请猛戳这里
if(event.keyCode == 13){
btnS.focus();
}
}
code.οnkeydοwn=jump;
</script>