Control.onkeypress(keypresseventargs) метод

Частые ошибки

Если вы только начинаете работать с событиями, обратите внимание на следующие моменты. Функция должна быть присвоена как , а не

Функция должна быть присвоена как , а не .

Если добавить скобки, то – это уже вызов функции, результат которого (равный , так как функция ничего не возвращает) будет присвоен . Так что это не будет работать.

…А вот в разметке, в отличие от свойства, скобки нужны:

Это различие просто объяснить. При создании обработчика браузером из атрибута, он автоматически создаёт функцию с телом из значения атрибута: .

Так что разметка генерирует такое свойство:

Используйте именно функции, а не строки.

Назначение обработчика строкой также сработает. Это сделано из соображений совместимости, но делать так не рекомендуется.

Не используйте для обработчиков.

Такой вызов работать не будет:

Регистр DOM-свойства имеет значение.

Используйте , а не , потому что DOM-свойства чувствительны к регистру.

Modifiers

Modifier effects

In a real browser, if a user holds and types , a capital will be typed into the input. Currently, Cypress does not simulate that behavior.

Modifiers are simulated by setting their corresponding values to for key and click events. So, for example, activating the modifier will set to true for any key events, such as .

In the example above, a lowercase will be typed, because that’s the literal character specified. To type a capital , you can use (or if you don’t care about the property on any key events).

This holds true for other special key combinations as well (that may be OS-specific). For example, on OSX, typing creates the special character . Like with capitalization, will not output , but the letter .

Similarly, modifiers will not affect arrow keys or deletion keys. For example will not delete an entire word. Open an issue if you need modifier effects to be implemented.

ПримечанияRemarks

Событие KeyDown применяется только к формам и элементам управления в форме, а не к элементам управления в отчете.The KeyDown event applies only to forms and controls on a form, and not to controls on a report.

Для запуска макроса или процедуры обработки события при возникновении этих событий задайте для свойства OnKeyDown имя макроса или .To run a macro or event procedure when these events occur, set the OnKeyDown property to the name of the macro or to .

Для обоих событий объект с фокусом получает все нажатия клавиш.For both events, the object with the focus receives all keystrokes. Форма может быть в фокусе, только если на ней нет элементов управления или все ее видимые элементы управления недоступны.A form can have the focus only if it has no controls or all its visible controls are disabled.

Форма также будет получать все события клавиатуры, даже те, которые возникают для элементов управления, если для свойства KeyPreview формы задано значение «Да».A form will also receive all keyboard events, even those that occur for controls, if you set the KeyPreview property of the form to Yes. Если задано это свойство, все события клавиатуры сначала выполняются для формы, а затем для элемента управления, в котором находится фокус.With this property setting, all keyboard events occur first for the form, and then for the control that has the focus. Вы можете отвечать на нажатие определенных клавиш формы, независимо от того, какой элемент управления имеет фокус.You can respond to specific keys pressed in the form, regardless of which control has the focus. Например, может потребоваться, чтобы сочетание клавиш CTRL + X всегда выполняло одно и то же действие с формой.For example, you may want the key combination Ctrl+X to always perform the same action on a form.

Если нажать и удерживать клавишу, события KeyDown и KeyPress повторяются многократно (KeyDown, Нажатие клавиши, Клавиша вниз, Нажатие клавишии т. д.), пока не будет освобожден ключ, а затем возникает событие KeyUp .If you press and hold down a key, the KeyDown and KeyPress events alternate repeatedly (KeyDown, KeyPress, KeyDown, KeyPress, and so on) until you release the key, and then the KeyUp event occurs.

Несмотря на то, что событие KeyDown возникает при нажатии большинства клавиш, оно обычно используется для распознавания или различения:Although the KeyDown event occurs when most keys are pressed, it is typically used to recognize or distinguish between:

  • Расширенные клавиши знаков, такие как функциональные клавиши.Extended character keys, such as function keys.

  • Клавиши навигации, такие как Home, End, ПГУП, Пгдн, стрелка вверх, стрелка вниз, стрелка вправо, стрелка влево и табуляция.Navigation keys, such as Home, End, PgUp, PgDn, Up arrow, Down arrow, Right arrow, Left arrow, and Tab.

  • Сочетания клавиш и стандартные модификаторы клавиатуры (Shift, CTRL или Alt).Combinations of keys and standard keyboard modifiers (Shift, Ctrl, or Alt keys).

  • Клавиши цифр числовой панели и клавиатуры.The numeric keypad and keyboard number keys.

Событие KeyDown не возникает при нажатии клавиши:The KeyDown event does not occur when you press:

  • Клавиша ВВОД, если у формы есть кнопка, для которой для свойства по умолчанию задано значение «Да».The Enter key if the form has a command button for which the Default property is set to Yes.

  • Клавиша ESC, если у формы есть кнопка, для которой для свойства Cancel задано значение «Да».The Esc key if the form has a command button for which the Cancel property is set to Yes.

Событие KeyDown возникает при нажатии или отправке клавиши ANSI.The KeyDown event occurs when you press or send an ANSI key. Событие KeyUp возникает после какого бы то ни было события для элемента управления, вызванного нажатием или отправкой клавиши.The KeyUp event occurs after any event for a control caused by pressing or sending the key. Если нажатие клавиши приводит к переходу с одного элемента управления на другой, событие KeyDown возникает для первого элемента управления, а события KeyPress и KeyUp происходят для второго элемента управления.If a keystroke causes the focus to move from one control to another control, the KeyDown event occurs for the first control, while the KeyPress and KeyUp events occur for the second control.

Чтобы узнать символ ANSI, соответствующий нажатой клавише, используйте событие KeyPress .To find out the ANSI character corresponding to the key pressed, use the KeyPress event.

Если модальное диалоговое окно отображается в результате нажатия или отправки клавиши, возникают события KeyDown и KeyPress , но событие KeyUp не возникает.If a modal dialog box is displayed as a result of pressing or sending a key, the KeyDown and KeyPress events occur, but the KeyUp event doesn’t occur.

События keydown и keyup

Событие происходит при нажатии клавиши, а – при отпускании.

Свойство объекта события позволяет получить символ, а свойство – «физический код клавиши».

К примеру, одну и ту же клавишу Z можно нажать с клавишей Shift и без неё. В результате получится два разных символа: в нижнем регистре и в верхнем регистре.

Свойство – это непосредственно символ, и он может различаться. Но всегда будет тот же:

Клавиша
Z (нижний регистр)
Shift+Z (Верхний регистр)

Если пользователь работает с разными языками, то при переключении на другой язык символ изменится с на совершенно другой. Получившееся станет новым значением , тогда как останется тем же: .

«KeyZ» и другие клавишные коды

У каждой клавиши есть код, который зависит от её расположения на клавиатуре. Подробно о клавишных кодах можно прочитать в спецификации о кодах событий UI.

Например:

  • Буквенные клавиши имеют коды по типу : , и т.д.
  • Коды числовых клавиш строятся по принципу: : , и т.д.
  • Код специальных клавиш – это их имя: , , и т.д.

Существует несколько широко распространённых раскладок клавиатуры, и в спецификации приведены клавишные коды к каждой из них.

Можно их прочитать в или просто нажмите нужную клавишу на выше и посмотрите.

Регистр важен: , а не

Выглядит очевидно, но многие всё равно ошибаются.

Пожалуйста, избегайте опечаток: правильно , а не . Условие работать не будет: первая буква в слове должна быть заглавная.

А что, если клавиша не буквенно-цифровая? Например, или , или какая-либо другая специальная клавиша? В таких случаях значение свойства примерно тоже, что и у :

Клавиша
F1
Backspace
Shift или

Обратите внимание, что точно указывает, какая именно клавиша нажата. Так, большинство клавиатур имеют по две клавиши Shift: слева и справа

уточняет, какая именно из них была нажата, в то время как сообщает о «смысле» клавиши: что вообще было нажато ().

Допустим, мы хотим обработать горячую клавишу Ctrl+Z (или Cmd+Z для Mac). Большинство текстовых редакторов к этой комбинации подключают действие «Отменить». Мы можем поставить обработчик событий на и проверять, какая клавиша была нажата.

Здесь возникает дилемма: в нашем обработчике стоит проверять значение или ?

С одной стороны, значение – это символ, он изменяется в зависимости от языка, и если у пользователя установлено в ОС несколько языков, и он переключается между ними, нажатие на одну и ту же клавишу будет давать разные символы. Так что имеет смысл проверять , ведь его значение всегда одно и тоже.

Вот пример кода:

С другой стороны, с тоже есть проблемы. На разных раскладках к одной и той же клавише могут быть привязаны разные символы.

Например, вот схема стандартной (US) раскладки («QWERTY») и под ней немецкой («QWERTZ») раскладки (из Википедии):

Для одной и той же клавиши в американской раскладке значение равно «Z», в то время как в немецкой «Y».

Буквально, для пользователей с немецкой раскладкой при нажатии на Y будет равен .

Если мы будем проверять в нашем коде , то для людей с немецкой раскладкой такая проверка сработает, когда они нажимают Y.

Звучит очень странно, но это и в самом деле так. В прямо упоминается такое поведение.

Так что может содержать неправильный символ при неожиданной раскладке. Одни и те же буквы на разных раскладках могут сопоставляться с разными физическими клавишами, что приводит к разным кодам. К счастью, это происходит не со всеми кодами, а с несколькими, например , , (как мы уже видели), и не происходит со специальными клавишами, такими как . Вы можете найти полный список проблемных кодов в .

Чтобы отслеживать символы, зависящие от раскладки, надёжнее.

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

Хотим поддерживать клавиши, меняющиеся при раскладке? Тогда – верный выбор.

Или мы хотим, чтобы горячая клавиша срабатывала даже после переключения на другой язык? Тогда может быть лучше.

ПримечанияRemarks

Событие KeyPress происходит, когда пользователь нажимает клавишу, которая вводит печатаемый знак в выполняемой форме (клавиша с кодом ANSI) при том, что форма или элемент управления в ней имеет .The KeyPress event occurs when the user presses a key that produces a typeable character (an ANSI key) on a running form while the form or a control on it has the . Событие может произойти до или после того, как клавиша отпущена.The event can occur either before or after the key is released. Это событие также возникает, если вы отправляете Нажатие клавиши ANSI в форму или элемент управления с помощью макрокоманды SendKeys в макросе или в операторе SendKeys в Visual Basic.This event also occurs if you send an ANSI keystroke to a form or control by using either the SendKeys action in a macro or the SendKeys statement in Visual Basic.

Событие KeyPress может произойти при нажатии любой из следующих клавиш:A KeyPress event can occur when any of the following keys are pressed:

  • Любой символ клавиатуры для печатиAny printable keyboard character
  • Сочетание клавиш CTRL с символом из стандартного алфавитаCTRL combined with a character from the standard alphabet
  • Сочетание клавиш CTRL со специальными символамиCTRL combined with any special character
  • BACKSPACEBACKSPACE
  • ESCESC

Событие KeyPress не происходит при следующих условиях:A KeyPress event does not occur under the following conditions:

  • нажатие клавиши TAB;Pressing TAB.
  • нажатие клавиши ВВОД;Pressing ENTER.
  • нажатие клавиши со стрелкой;Pressing an arrow key.
  • если при нажатии клавиши фокус перемещается с одного элемента управления на другой.When a keystroke causes the focus to move from one control to another.

Примечание

BACKSPACE входит в , а DELETE — нет.BACKSPACE is part of the , but DELETE is not. Удаление знака в элементе управления с помощью Backspace вызывает событие KeyPress; Удаление символа с помощью DELETE не выполняется.Deleting a character in a control by using BACKSPACE causes a KeyPress event; deleting a character by using DELETE doesn’t.

Когда пользователь удерживает клавишу, которая производит код ANSI клавиши, попеременно повторяются события KeyDown и KeyPress.When a user holds down a key that produces an ANSI keycode, the KeyDown and KeyPress events alternate repeatedly. Когда пользователь отпускает клавишу, происходит событие KeyUp.When the user releases the key, the KeyUp event occurs. Форма или элемент управления с фокусом получают все нажатия клавиш.The form or control with the focus receives all keystrokes. Форма может иметь фокус, только если в ней нет элементов управления или все видимые элементы управления отключены.A form can have the focus only if it has no controls, or if all its visible controls are disabled.

Действием по умолчанию для события KeyPress является обработка кода события, который соответствует нажатой клавише.The default action for the KeyPress event is to process the event code that corresponds to the key that was pressed. KeyANSI указывает на знак ANSI, который соответствует нажатой клавише или сочетанию клавиш.KeyANSI indicates the ANSI character that corresponds to the pressed key or key combination. Событие KeyPress интерпретирует прописные и строчные буквы каждого знака как отдельные коды клавиш, а значит, как два отдельных символа.The KeyPress event interprets the uppercase and lowercase of each character as separate key codes, and therefore as two separate characters.

Чтобы ответить на физическое состояние клавиатуры или обработать нажатия клавиш, не распознанных событием KeyPress, таких как функциональные клавиши, клавиши перемещения и любые их сочетания с клавишами ALT, SHIFT и CTRL, используйте процедуры событий KeyDown и KeyUp.To respond to the physical state of the keyboard, or to handle keystrokes not recognized by the KeyPress event, such as function keys, navigation keys, and any combinations of these with keyboard modifiers (ALT, SHIFT, or CTRL), use the KeyDown and KeyUp event procedures.

Последовательность событий клавиатуры:The sequence of keyboard-related events is:

  1. KeyDownKeyDown
  2. KeyPressKeyPress
  3. KeyUpKeyUp

Remarks

To run a macro or event procedure when this event occurs, set the OnKeyPress property to the name of the macro or to .

The object with the focus receives all keystrokes. A form can have the focus only if it has no controls or all its visible controls are disabled.

A form will also receive all keyboard events, even those that occur for controls, if you set the KeyPreview property of the form to Yes. With this property setting, all keyboard events occur first for the form, and then for the control that has the focus. You can respond to specific keys pressed in the form, regardless of which control has the focus. For example, you may want the key combination Ctrl+X to always perform the same action on a form.

If you press and hold down an ANSI key, the KeyDown and KeyPress events alternate repeatedly (KeyDown, KeyPress, KeyDown, KeyPress, and so on) until you release the key, and then the KeyUp event occurs.

A KeyPress event can involve any printable keyboard character, the Ctrl key combined with a character from the standard alphabet or a special character, and the Enter or Backspace key. You can use the KeyDown and KeyUp event procedures to handle any keystroke not recognized by the KeyPress event, such as function keys, navigation keys, and any combinations of these with keyboard modifiers (Alt, Shift, or Ctrl keys). Unlike the KeyDown and KeyUp events, the KeyPress event doesn’t indicate the physical state of the keyboard; instead, it indicates the ANSI character that corresponds to the pressed key or key combinations.

KeyPress interprets the uppercase and lowercase of each character as separate key codes and, therefore, as two separate characters.

Note

The Backspace key is part of the ANSI character set, but the Delete key isn’t. If you delete a character in a control by using the Backspace key, you cause a KeyPress event; if you use the Delete key, you don’t.

The KeyDown and KeyPress events occur when you press or send an ANSI key. The KeyUp event occurs after any event for a control caused by pressing or sending the key. If a keystroke causes the focus to move from one control to another control, the KeyDown event occurs for the first control, while the KeyPress and KeyUp events occur for the second control.

For example, if you go to a new record and type a character in the first control in the record, the following events occur:

  • Current (for the new record)
  • Enter (for the first control in the new record)
  • GotFocus (for the control)
  • KeyDown (for the control)
  • KeyPress (for the control)
  • BeforeInsert (for the new record in the form)
  • Change (for the control if it’s a text box or combo box)
  • KeyUp (for the control)

Разметка страницы

Разметка страницы такова:

Разметка страницы

<div id=»wrap»>
<h1>Измененяем цвета фона по событию onclick и onkeydown</h1>
<p><img src=»img/pic.jpg»></p>
<ul id=»colors»>
<li class=»btn» style=»background:#fff» title=»Любая клавиша»>&nbsp;</li>
<li class=»btn» style=»background:#ccc» title=»Клавиша 1″>&nbsp;</li>
<li class=»btn» style=»background:#999″ title=»Клавиша 2″>&nbsp;</li>
<li class=»btn» style=»background:#666″ title=»Клавиша 3″>&nbsp;</li>
<li class=»btn» style=»background:#333″ title=»Клавиша 4″>&nbsp;</li>
<li class=»btn» style=»background:#000″ title=»Клавиша 5″>&nbsp;</li>
<li class=»btn» style=»background:#f00″ title=»Клавиша 6″>&nbsp;</li>
</ul>
</div>

1
2
3
4
5
6
7
8
9
10
11
12
13

<div id=»wrap»>

<h1>Измененяемцветафонапособытиюonclickиonkeydown<h1>

<p><img src=»img/pic.jpg»><p>

<ul id=»colors»>

<li class=»btn»style=»background:#fff»title=»Любая клавиша»>&nbsp;<li>

<li class=»btn»style=»background:#ccc»title=»Клавиша 1″>&nbsp;<li>

<li class=»btn»style=»background:#999″title=»Клавиша 2″>&nbsp;<li>

<li class=»btn»style=»background:#666″title=»Клавиша 3″>&nbsp;<li>

<li class=»btn»style=»background:#333″title=»Клавиша 4″>&nbsp;<li>

<li class=»btn»style=»background:#000″title=»Клавиша 5″>&nbsp;<li>

<li class=»btn»style=»background:#f00″title=»Клавиша 6″>&nbsp;<li>

<ul>

<div>

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

Определение и применение

jQuery метод .keyup() привязывает JavaScript обработчик событий «keyup» (нажатая клавиша была отпущена), или запускает это событие на выбранный элемент.

Событие «keyup» посылается элементу в тот момент, когда пользователь отпустит нажатую клавишу на клавиатуре. Если эта клавиша удерживается нажатой, то событие не сработает до того момента, пока пользователь её не отпустит, или пока на горе не свиснет рак. Это событие может быть прикреплено к любому элементу, но сработает только на тех элементах, которые имеют фокус.

Обратите внимание, что событие «keyup» по аналогии с событием «keydown» (метод .keydown()) срабатывает на любой кнопке (включая специальные — Alt, Ctrl, Shift, Esc, PrScr и тому подобное)

Other Features

Below in the documentation you can find details of all the options you can specify
when creating a Keypress combo, but here’s a quick synopsis of some more things you
can do:

The prevent_default option in Keypress is special because it will preventDefault
on all keys that are part of a combo, rather than only preventing when the full
combo is pressed.

The prevent_repeat option makes sure your callback is only called once instead of
being called every time the keydown event is fired.

You can enter special characters that can only be entered with the shift key
(eg. !, @, #, $, etc.) as part of your combo and Keypress will seamlessly handle
that for you.

You can bind your Keypress Listener to a particular DOM element if you only want
to watch for combos when a particular element is active. Read more about that
below in the advanced options.

Погружение

Существует ещё одна фаза из жизненного цикла события – «погружение» (иногда её называют «перехват»). Она очень редко используется в реальном коде, однако тоже может быть полезной.

Стандарт DOM Events описывает 3 фазы прохода события:

  1. Фаза погружения (capturing phase) – событие сначала идёт сверху вниз.
  2. Фаза цели (target phase) – событие достигло целевого(исходного) элемента.
  3. Фаза всплытия (bubbling stage) – событие начинает всплывать.

Картинка из спецификации демонстрирует, как это работает при клике по ячейке , расположенной внутри таблицы:

То есть при клике на событие путешествует по цепочке родителей сначала вниз к элементу (погружается), затем оно достигает целевой элемент (фаза цели), а потом идёт наверх (всплытие), вызывая по пути обработчики.

Ранее мы говорили только о всплытии, потому что другие стадии, как правило, не используются и проходят незаметно для нас.

Обработчики, добавленные через -свойство или через HTML-атрибуты, или через с двумя аргументами, ничего не знают о фазе погружения, а работают только на 2-ой и 3-ей фазах.

Чтобы поймать событие на стадии погружения, нужно использовать третий аргумент вот так:

Существуют два варианта значений опции :

  • Если аргумент (по умолчанию), то событие будет поймано при всплытии.
  • Если аргумент , то событие будет перехвачено при погружении.

Обратите внимание, что хоть и формально существует 3 фазы, 2-ую фазу («фазу цели»: событие достигло элемента) нельзя обработать отдельно, при её достижении вызываются все обработчики: и на всплытие, и на погружение. Давайте посмотрим и всплытие и погружение в действии:

Давайте посмотрим и всплытие и погружение в действии:

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

Если вы кликните по , то последовательность следующая:

  1. → → → (фаза погружения, первый обработчик)
  2. (фаза цели, срабатывают обработчики, установленные и на погружение и на всплытие, так что выведется два раза)
  3. → → → (фаза всплытия, второй обработчик)

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

Чтобы убрать обработчик , нужна та же фаза

Если мы добавили обработчик вот так , то мы должны передать то же значение аргумента в , когда снимаем обработчик.

На каждой фазе разные обработчики на одном элементе срабатывают в порядке назначения

Если у нас несколько обработчиков одного события, назначенных на один элемент, в рамках одной фазы, то их порядок срабатывания – тот же, в котором они установлены:

ПримерExample

В следующем примере текст, введенный в текстовое поле, преобразуется в верхний регистр по мере ввода текста, по одному символу за раз.The following example converts text entered in a text box to uppercase as the text is typed in, one character at a time.

Чтобы попробовать пример, добавьте приведенную ниже процедуру обработки события в форму, содержащую текстовое поле с именем шипрегион.To try the example, add the following event procedure to a form that contains a text box named ShipRegion.

Поддержка и обратная связьSupport and feedback

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи?Have questions or feedback about Office VBA or this documentation? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.

Определение и применение

jQuery метод .keypress() привязывает JavaScript обработчик событий «keypress» (нажатие на любую клавишу клавиатуры кроме специальных — Alt, Ctrl, Shift, Esc, PrScr и тому подобные), или запускает это событие на выбранный элемент.

Обратите внимание, что событие «keypress» может иметь различное поведение в браузерах в связи с отсутствием единого стандарта.
Событие «keypress» посылается элементу в тот момент, когда браузер пользователя регистрирует ввод с клавиатуры.
Если эта клавиша удерживается нажатой, то событие вызывается многократно. Это событие может быть прикреплено к любому элементу, но сработает только на тех элементах, которые имеют фокус

Обратите внимание, что событие «keydown» (метод .keydown()) в отличии от события «keypress», которое не срабатывает на специальных кнопках (Alt, Ctrl, Shift, Esc, PrScr и тому подобное), срабатывает при нажатии на любую кнопку

JavaScript

JS Array
concat()
constructor
copyWithin()
entries()
every()
fill()
filter()
find()
findIndex()
forEach()
from()
includes()
indexOf()
isArray()
join()
keys()
length
lastIndexOf()
map()
pop()
prototype
push()
reduce()
reduceRight()
reverse()
shift()
slice()
some()
sort()
splice()
toString()
unshift()
valueOf()

JS Boolean
constructor
prototype
toString()
valueOf()

JS Classes
constructor()
extends
static
super

JS Date
constructor
getDate()
getDay()
getFullYear()
getHours()
getMilliseconds()
getMinutes()
getMonth()
getSeconds()
getTime()
getTimezoneOffset()
getUTCDate()
getUTCDay()
getUTCFullYear()
getUTCHours()
getUTCMilliseconds()
getUTCMinutes()
getUTCMonth()
getUTCSeconds()
now()
parse()
prototype
setDate()
setFullYear()
setHours()
setMilliseconds()
setMinutes()
setMonth()
setSeconds()
setTime()
setUTCDate()
setUTCFullYear()
setUTCHours()
setUTCMilliseconds()
setUTCMinutes()
setUTCMonth()
setUTCSeconds()
toDateString()
toISOString()
toJSON()
toLocaleDateString()
toLocaleTimeString()
toLocaleString()
toString()
toTimeString()
toUTCString()
UTC()
valueOf()

JS Error
name
message

JS Global
decodeURI()
decodeURIComponent()
encodeURI()
encodeURIComponent()
escape()
eval()
Infinity
isFinite()
isNaN()
NaN
Number()
parseFloat()
parseInt()
String()
undefined
unescape()

JS JSON
parse()
stringify()

JS Math
abs()
acos()
acosh()
asin()
asinh()
atan()
atan2()
atanh()
cbrt()
ceil()
clz32()
cos()
cosh()
E
exp()
expm1()
floor()
fround()
LN2
LN10
log()
log10()
log1p()
log2()
LOG2E
LOG10E
max()
min()
PI
pow()
random()
round()
sign()
sin()
sqrt()
SQRT1_2
SQRT2
tan()
tanh()
trunc()

JS Number
constructor
isFinite()
isInteger()
isNaN()
isSafeInteger()
MAX_VALUE
MIN_VALUE
NEGATIVE_INFINITY
NaN
POSITIVE_INFINITY
prototype
toExponential()
toFixed()
toLocaleString()
toPrecision()
toString()
valueOf()

JS OperatorsJS RegExp
constructor
compile()
exec()
g
global
i
ignoreCase
lastIndex
m
multiline
n+
n*
n?
n{X}
n{X,Y}
n{X,}
n$
^n
?=n
?!n
source
test()
toString()

(x|y)
.
\w
\W
\d
\D
\s
\S
\b
\B
\0
\n
\f
\r
\t
\v
\xxx
\xdd
\uxxxx

JS Statements
break
class
continue
debugger
do…while
for
for…in
for…of
function
if…else
return
switch
throw
try…catch
var
while

JS String
charAt()
charCodeAt()
concat()
constructor
endsWith()
fromCharCode()
includes()
indexOf()
lastIndexOf()
length
localeCompare()
match()
prototype
repeat()
replace()
search()
slice()
split()
startsWith()
substr()
substring()
toLocaleLowerCase()
toLocaleUpperCase()
toLowerCase()
toString()
toUpperCase()
trim()
valueOf()

Пример проверки ввода в Input

Рассмотрим небольшой пример, в котором разрешим ввод в текстовое поле только нуля и единицы. Учитываем возможность стирания, удаления и табуляции.

// HTML
<input id="binaryInput" type="text">

// SCRIPT
document.getElementById('binaryInput').addEventListener('keydown', function(event){
    if (!.includes(event.key)) {
        event.preventDefault();
    }      
});

Результат:

Метод «preventDefault()» запрещает действие по умолчанию.

Применение предыдущего обработчика ко всем текстовыми полями на странице:

document.querySelectorAll('input').forEach(function(element){
  element.addEventListener('keydown', function(event){
  	if (!.includes(event.key)) {
        event.preventDefault();
    }
  });
});
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector