Как я могу предотвратить возвращение Backspace на предыдущую страницу, пока я использую окно входа - PullRequest
1 голос
/ 02 июля 2010

поле логина находится в шапке сайта, доступно на всех страницах. Я использую JavaScript:

<script type="text/javascript" language="javascript">
       history.forward();

Что решает проблему возврата в поле входа в систему. Но пока я просматриваю остальную часть сайта, я могу использовать клавишу Backspace для просмотра предыдущей страницы, мне нужно будет использовать только навигационное меню. Как я могу решить эту проблему?

Ответы [ 3 ]

3 голосов
/ 02 июля 2010

Попробуйте этот JavaScript

<script for="document" event=onkeydown>

// Check if this is a Backspace
 if (window.event.keyCode == 8)
 {
    // Cancel backspace if not in a text element
    if(document.activeElement.type != "text")
    {
        window.event.returnValue=false;
    }
 }
 </script>
0 голосов
/ 02 июля 2010

Если вы используете правильное поле ввода текста HTML, и фокус на нем, то возврат не вернет пользователя.Если вы не используете правильное поле ввода HTML, я предлагаю вам сделать это.Браузеры справляются с этим для вас.

0 голосов
/ 02 июля 2010

Веб-страница изменения клавиш браузера является спорной темой, так как это нарушает принцип наименьшего удивления (который должен быть знаком дизайнера UX).Кроме того, не во всех браузерах есть это сопоставление клавиш (Bksp -> Go back).

При этом вы можете попытаться захватить ключевые события, как описано, например, здесь и отменить распространение события.Не уверен, что это возможно для всех ключей, поэтому вам придется попробовать и посмотреть.

...