2009-09-16 78 views
1

当用户按下删除代码时,我使用下面的代码删除一个字符。 它适用于Firefox,但不适用于Google Chrome。 我需要解决什么问题?通过JavaScript访问谷歌浏览器中的删除键

window.onkeypress = function(key) { 
     ... 
     if (Guessing>0){ 
      else if (key.keyCode == 8){//Delete key 
       PhraseEntry=PhraseEntry.substring(0, PhraseEntry.length - (1+back)) 
        + PhraseEntry.substring(PhraseEntry.length - back, PhraseEntry.length); 
       $("display_text").empty().append(PhraseEntry); 
      } 
     } 
    } 
    ... 
+0

应当指出的是,它似乎是任一编码,以防止用户的按压在某些情况下作为删除键的检测错误或有意有可能检测到其他键被按下,然后删除。 – John 2012-06-09 06:11:30

回答

3

尝试keydown event代替(DeletekeyCode 46):

window.onkeydown = function(e) { 
    if (e.keyCode == 46) { // Delete key 
     // ... 
    } 
} 
1
<script type="text/javascript"> 
    window.onkeypress = function(key) 
     { 
      alert(key.keyCode); 
     } 
</script> 

我这个启动 - 把在你的网页,打在Chrome :)

1

观看时它处理的​​事件,而不是删除。