Windows系统的IP输入框,体验很好,输满了3位就可以自动到下一个焦点。
使用jquery做了一个类似的
http://jsfiddle.net/chromefans/3P5FU/
但是运行下就会发现其实体验并不是很好,因为如果我要编辑第二个框的第二个数字,会立刻触发keyup然后跳到下一个……有想过判断光标位置之类的,但是感觉不“优雅”…,求助有没有优雅的办法。
Windows系统的IP输入框,体验很好,输满了3位就可以自动到下一个焦点。
使用jquery做了一个类似的
http://jsfiddle.net/chromefans/3P5FU/
但是运行下就会发现其实体验并不是很好,因为如果我要编辑第二个框的第二个数字,会立刻触发keyup然后跳到下一个……有想过判断光标位置之类的,但是感觉不“优雅”…,求助有没有优雅的办法。
有个 jQuery 插件,你可以试试 :
http://mlntn.com/2009/12/30/jquery-ip-address-plugin/
这是 demo
我的想法是,三个input,css去掉边框,每个input的maxlength设置成3,addEventListener监听keydown,if输入keydown&&输入框的value.length大于3,focus下一个input,如果backspace&&输入框的value.length==0,focus上一个input。
代码就不写了,方法可能有点笨,不过应该可以实现。
6 回答5.3k 阅读✓ 已解决
9 回答9.5k 阅读
5 回答3.8k 阅读✓ 已解决
5 回答8.1k 阅读✓ 已解决
4 回答8.1k 阅读✓ 已解决
7 回答10.1k 阅读
5 回答8.4k 阅读
屏蔽掉keycode为8(退格)和46(delete)的keyup响应如何?这样删除字符就不会触发了
嗯 那就试试不要在在keyup马上验证 而是在keyup后延时0.1秒验证