0

我的应用程序将允许人们在画布上书写,因此我在按键上附加了一个事件监听器,这会触发以下功能:

var Keypress = function(event) {
    if (event.keyCode == 8) {
        chatRoom.removeLetter();
        event.preventDefault();
    }

    if(event.keyCode == 13){
        chatRoom.newLine();
    }
    chatRoom.addText(event.charCode,"White");
}

问题是这样的,目前如果有人点击退格 1 个字符可以被删除,退格被冻结并且在按下另一个键之前不能再次使用。但是,我正在寻找的是能够多次击退退格键,删除许多字符并且没​​有人最终返回一页。

本质上,我试图找到一种方法让函数触发 removeLetter() 事件并禁用返回浏览器,但是我见过的所有示例都冻结了退格(导致这个字母可以被删除)或不工作(返回 false 对我来说根本不起作用)。

4

1 回答 1

1

问题是您正在将退格“字符”写入聊天室。因此,当您第二次按退格键时,您只是删除了该退格符,然后将其重写。

删除您的信件后尝试返回:

if (event.keyCode == 8) {
    chatRoom.removeLetter();
    event.preventDefault();
    return;
}
于 2012-11-29T01:05:41.240 回答