我需要从键盘获取输入并将其放入div中。我还想从编辑器中获取复制粘贴的字符串。所以我使用输入事件而不是 keyup 。
为此,我需要获取char代码并将其转换为字符串。但我发现 e.which 赢得了输入(至少不与我合作,不太确定其他人)。 每次都返回0 。
我想保留"输入" 事件。那么如何获取此事件的关键代码呢?
var editor=document.getElementById('editor');
var content=document.getElementById('content');
editor.addEventListener('input',function(e){
alert(e.which);
});

#editor{
position:relative;
width:500px;
height:400px;
border:1px solid black;
word-wrap: break-word;
padding-left:4px;
padding-right:4px;
padding-bottom:1em;
box-sizing:border-box;
overflow:scroll;
}

<div id='editor' contenteditable='true' ></div>
&#13;
答案 0 :(得分:1)
这是因为input不是KeyboardEvent而Event.which是KeyboardEvent的属性。
因此,如果您想获得e.which
,那么您需要使用其中一个可用的键盘事件,如keypress,keyup或keydown