keypress

« Обратно к странице событий

keypress( )

Вызывает событие keypress для каждого элемента набора.
Это приводит к тому, что все привязанные к событию keypress функции выполняются и вызывается действие браузера по умолчанию для каждого совпавшего элемента набора. Действие браузера по умолчанию можно предотвратить путем возвращения false от одной из функций привязанных к событию keypress. Данное событие обычно активируется,  когда нажата клавиша на клавиатуре.

keypress( функция )

Назначает функцию к событию keypress для каждого элемента набора.
Данное событие обычно активируется, когда нажата клавиша на клавиатуре. Событие keypress рассматривается как keydown и keyup на одной и той же клавише. Таким образом, последовательность событий представляет собой:
  • keydown
  • keypress
  • keyup
Аргументы:

функция Функция
Функция.

function callback(eventObject) {
  this; // dom element
}
Примеры:

В этом примере внизу отображается код текущей нажатой клавиши, а в строку выше добавляются лишь буквы латинского алфавита и пробелы.

    $("input").keypress(function (e) {
      if (e.which == 32 || (65 <= e.which && e.which <= 65 + 25)
                        || (97 <= e.which && e.which <= 97 + 25)) {
        var c = String.fromCharCode(e.which);
        $("p").append($("<span/>"))
              .children(":last")
              .append(document.createTextNode(c));
      } else if (e.which == 8) {
        // backspace in IE only be on keydown
        $("p").children(":last").remove();
      }
      $("div").text(e.which);
    });
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
                    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>

  <script>
  $(document).ready(function(){

    $("input").keypress(function (e) {
      if (e.which == 32 || (65 <= e.which && e.which <= 65 + 25)
                        || (97 <= e.which && e.which <= 97 + 25)) {
        var c = String.fromCharCode(e.which);
        $("p").append($("<span/>"))
              .children(":last")
              .append(document.createTextNode(c));
      } else if (e.which == 8) {
        // backspace in IE only be on keydown
        $("p").children(":last").remove();
      }
      $("div").text(e.which);
    });

  });
  </script>

  <style>
  input { margin:10px; }
  p { color:blue; margin:10px; font-size:18px; }
  p.hilite { background:yellow; }
  div { color:red; }
  </style>
</head>
<body>
  <input type="text" />

  <p>Add text - </p>
  <div></div>
</body>
</html>
Name Type