当按下一个键时,是否有任何可能的方法只显示一个字符DOWN一段时间我的意思是当我按下时让我们说' s'DOWN一段时间我只想's'显示我不希望这种情况发生'ssssssssssssssssssssssssssssssssssssssssssssss ....'.
并且使用这种方法出来,因为这会带来这样的问题:如果用户快速键入并同时按下两个键,则仅显示第二个键,例如,如果我按下"k"并按下白色,则按下'k '去'p'只显示'p'.
var textarea='';
document.getElementById('textareaID').onkeydown=keydown;
document.getElementById('textareaID').onkeyup=keyup;
function keydown () {
this.value=textarea;
}
function keyup () {
textarea=this.value;
this.value=textarea;
}
Run Code Online (Sandbox Code Playgroud)
并且请不要说使用计数器,因为它因某些原因不起作用相信我,我已经尝试了最近3天.
http://toki-woki.net/lab/long-press/这是我基本上要做的事情,但是我无法理解你按住键的部分是如何显示出来的,当然只有一个显示出去了,当然如果我按下一个键,当按键关闭时,我按下另一个,两个都显示休息很容易.
所以我会喜欢和解释它让我疯狂.
好吧,我想我明白了.
1:在keydown上取消对textarea的输入.
2:在点击的字母中放入密钥.
document.getElementById('textareaID').onkeydown=keydown;
document.getElementById('textareaID').onkeyup=keyup;
// keydown is run more than once if held down hence "ssssssss"
function keydown (event) {
// cancel input
}
// since the keyup event is only fired once we will do most of the work here
function keyup (event) {
// insert input
}
Run Code Online (Sandbox Code Playgroud)
这是代码(有评论,所以你可以看到发生了什么):http: //jsfiddle.net/NerfAnarchist/gXVuC/
| 归档时间: |
|
| 查看次数: |
318 次 |
| 最近记录: |