其他键仍然按下时弹起键盘弹出
问题描述:
我想检查输入值的长度,并在达到3时自动跳到下一个键。我对跳跃的代码,但KEYUP事件排队的方式造成我头疼..其他键仍然按下时弹起键盘弹出
输入域实例句柄:
$('input').on('keyup', function (e) {
var $this = $(this);
var code = e.keyCode || e.which;
alert(String.fromCharCode(code)+' '+$this.val());
// Handling of $this.val()==3
});
类型释放前三个字母按键。所有的事件已经知道输入的最终值,因此我检查的长度将过早地和三个字母。
如何使keyup事件触发,而其他键仍然按下? 如果需要澄清,请询问。
答
我明白你的意思了。这可能需要一些黑客攻击。
试试这个,虽然它可能不工作:
-
变化事件监听器是在
change
$('input').on('change', function(e) { //use console rather than alert console.log(String.fromCharCode(code)+' '+$this.val()); });
-
然后添加对
keyup
单独的侦听器,它将触发change事件$('input').on('keyup', function (e) { $(this).trigger('change'); });
不要忘记,JS也是'酷':'$(this).val()'=='this.value' – 2013-03-01 16:20:05
交换一行为香草javascript的点是什么,如果字面上的其他行是jQuery ? – Kristian 2013-03-01 16:24:10