.keyup( handler(объектСобытия) )
Описание:
Привязывает обработчик события к событию "keyup" JavaScript, или вызывает данное событие на элемент.
.keyup( handler(объектСобытия) )
Функция выполняется каждый раз, когда вызывается событие.
.keyup( [ данныеСобытия ], обработчик(объектСобытия)
Добавлена в версию: 1.4.3
Карта данных, которая будет передана в обработчик событий.
обработчик(объектСобытия)
Функция для выполнения каждый раз, когда событие вызвано.
Этот метод является сокращением для .bind('keyup', handler) в первом варианте, и .trigger('keyup') во втором.
Событие keyup передается элементу, когда
пользователь отпускает клавишу клавиатуры. Оно может быть прикрепленно к
любому элементу, но событие передается только элементу, который имеет
фокус.
Фокусируемые элементы могут варьироваться между браузерами, но элементы
формы всегда могут получить фокус, как разумные кандидаты для этого типа
события.
Для примера, рассмотрим HTML:
<form>
<input id="target" type="text" value="Hello there" />
</form>
<div id="other">
Trigger the handler
</div>
Обработчик события может быть связан с полем ввода:
$('#target').keyup(function() {
alert('Handler for .keyup() called.');
});
Теперь, когда курсор находится внутри поля ввода и клавиша нажата и отпущена, будет выдано предупреждение:
Handler for .keyup() called. Мы можем инициировать событие вручную, когда нажат другой элемент:
$('#other').click(function() {
$('#target').keyup();
});
После выполнения этого кода, нажатие на Trigger the handler также выдаст сообщение.
Если нажатие клавиши где-либо должно быть поймано (для примера,
глобальное сочетание клавиш на странице), целесообразно приложить такое
поведение к объекту document . Потому что событие распространяется, все нажатия клавиш несут свой путь к объекту DOM document , если его явно не остановили.
Для определения, какая клавиша нажата, мы можем рассмотреть объект
события, который передается обработчику функции. Хотя браузеры
используют различные свойства для хранения этой информации, jQuery
нормализует свойство .which , так что мы можем надежно использовать его для получения кода клавишы.
Этот код относится к клавише на клавиатуре,
включая коды для специальных клавиш, таких как стрелки.
Для поимки введенного текста, .keypress()
может быть более правильным выбором. Примеры
Пример 1
Для того, чтобы выполнить действие при отпускании клавиши escape, можно сделать так:
$(document).keyup(function(event){
if (event.keyCode == 27) {
alert('escaped!');
}
});
Пример 1 - Полный код:
Для того, чтобы выполнить действие при отпускании клавиши escape, можно сделать так:
<!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 type="text/javascript" language="javascript">
$(document).ready(function(){
$(document).keyup(function(event){
if (event.keyCode == 27) {
alert('escaped!');
}
});
});
</script>
</head>
<body>
Press escape button
</body>
</html>
Пример 2
Показывает объект события для обработчика keyup, когда клавиша отпущена в поле ввода.
var xTriggered = 0;
$('#target').keyup(function(event) {
if (event.keyCode == '13') {
event.preventDefault();
}
xTriggered++;
var msg = 'Handler for .keyup() called ' + xTriggered + ' time(s).';
$.print(msg, 'html');
$.print(event);
});
$('#other').click(function() {
$('#target').keyup();
});
|