javascript防止keyup的默认值

我有以下代码:

$(document).on('keyup', 'p[contenteditable="true"]', function(e) { if(e.which == 13) { e.preventDefault(); $(this).after('

'); $(this).next('p').focus(); } else if((e.which == 8 || e.which == 46) && $(this).text() == "") { e.preventDefault(); alert("Should remove element."); $(this).remove(); $(this).previous('p').focus(); }; });

我想在按下某个键时阻止默认操作。 preventDefault适用于keypress但不适用于keyup 。 有没有办法防止$(document).on('keyup')的defualt?

默认操作后, keyup会触发。

keydownkeypress是您可以阻止默认设置的地方。
如果没有停止,则默认发生并触发keyup

我们可以使用以下代码段来阻止该操作。

 e.stopPropagation(); e.preventDefault(); e.returnValue = false; e.cancelBubble = true; return false; 

keydown / keypress后keyup触发。 我们可以阻止任何这些事件中的默认操作。

谢谢,

湿婆