请看这把小提琴:http://jsfiddle.net/yg49k/
以下代码在FireFox中运行良好,但在最新版本的Chrome中不起作用。
于飞:
<input type="text" id="one" placeholder="Type two chars" />
<input type="text" id="two" placeholder="It should focus here" />
查询:
$("#one").on("input", function() {
if($("#one").val().length == 2) { $("#two").focus(); }
});
有人知道我该怎么解决这个问题吗?
5条答案
按热度按时间qij5mzcb1#
看起来像是Chrome中的一个bug。有时候它太快了,无法正确执行事件;)
已找到解决方法http://jsfiddle.net/Rd2rZ/
使用
setTimeout
时,尽量减少延迟,这样会降低Chrome的速度,但会让它正常工作。fsi0uk1n2#
您应该用途:
DEMO
对于
#five
处理程序也是如此。oninput
事件似乎与onkeypress
具有相同的行为。np8igboo3#
olmpazwi4#
试试这个!
lg40wkob5#
我遇到了同样的问题,并使用以下代码修复了它:
您还应该为输入提供一个name属性,以使其正常工作。
希望这能帮助那些使用其他建议没有让它工作的人。