Мое намерение состоит в том, чтобы запретить клавише Backspace вернуться к предыдущему URL-адресу в стеке истории браузеров.
index.html
<html>
<head>
<script type="text/javascript" src="app.js"></script>
</head>
<body>
<input type="text">
</body>
</html>
app.js
window.addEventListener('keydown', function(e) {
if(e.key === 'Backspace') {
e.preventDefault();
}
}, false);
Я использовал protectDefault () для ключевых событий с отключенным useCapture.Это предотвратило действие клавиши Backspace по умолчанию.Однако теперь я не могу использовать клавишу Backspace где-либо еще (например, чтобы удалить текст из поля ввода).
Почему это так?Разве поля ввода не должны вести себя нормально, так как окно получит событие только в самом конце (событие зарегистрировано в режиме всплытия), и разве не будет вызываться warnDefault только тогда?