我的应用程序将允许人们在画布上书写,所以我在按键上附加了一个事件监听器,这会触发以下功能:
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对我来说根本不起作用)。
答案 0 :(得分:1)
问题在于你正在向聊天室写入退格“角色”。因此,当您第二次按退格键时,您只是删除该退格符,然后重写它。
删除你的信件后尝试返回:
if (event.keyCode == 8) {
chatRoom.removeLetter();
event.preventDefault();
return;
}