如果有文本框,
<input id='Sub' type='text'>
每次输入更改时,我都可以捕获:
sub = document.getElementById('Sub');
sub.addEventListener('input', function(e) {
// here the contents of the textbox is accessible via this.value
...
}, false);
我想确定何时backspace和delete是输入触发的原因,所以我可以对其进行特殊处理。据我所知,e
和this
都没有公开按下导致输入事件触发的键。有没有办法找出关键是什么?
“ input”不是您要捕获的事件。您必须赶上“按键”事件。然后您可以看到“ e.keyCode”:
var sub = document.getElementById('Sub');
sub.addEventListener('keypress', function(e) {
console.log(e.keyCode)
}, false);
这里是一个小演示:http://jsfiddle.net/9LZ9Z/