blob: 535fd8b0a062441436dbf6f791ccba8835858ce1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
|
---
title: GlobalEventHandlers.onkeydown
slug: Web/API/GlobalEventHandlers/onkeydown
tags:
- HTML DOM
- Обробник подій
- клавіатура
- події клавіатури
translation_of: Web/API/GlobalEventHandlers/onkeydown
---
<div>{{ApiRef("HTML DOM")}}</div>
<p>Властивість <code><strong>onkeydown</strong></code> спільно з <a href="https://wiki.developer.mozilla.org/uk/docs/Web/API/GlobalEventHandlers"><code>GlobalEventHandlers</code></a> є <a href="https://wiki.developer.mozilla.org/uk/docs/Web/API/EventHandler" rel="nofollow"><code>EventHandler</code></a> обробляє події {{event("keydown")}}.</p>
<p>Подія <code>keydown</code> спрацьовує, коли користувач натискає клавішу клавіатури.</p>
<h2 id="Синтаксис">Синтаксис</h2>
<pre class="syntaxbox"><em>target</em>.onkeydown = <em>functionRef</em>;</pre>
<h3 id="Значення">Значення</h3>
<p><code>functionRef</code> це ім'я функції або вираз функції. В якості єдиного аргументу функція отримує об'єкт {{domxref("KeyboardEvent")}}.</p>
<h2 id="Приклад">Приклад</h2>
<p>У цьому прикладі виводитимуться значення {{domxref("KeyboardEvent.code")}} щоразу, коли ви натискаете клавішу всередині елемента {{HtmlElement("input")}}.</p>
<h3 id="HTML">HTML</h3>
<pre class="brush: html"><input>
<p id="log"></p></pre>
<h3 id="JavaScript">JavaScript</h3>
<pre class="brush: js">const input = document.querySelector('input');
const log = document.getElementById('log');
input.onkeydown = logKey;
function logKey(e) {
log.textContent += ` ${e.code}`;
}</pre>
<h3 id="Підсумок">Підсумок</h3>
<p>{{EmbedLiveSample("Example")}}</p>
<h2 id="Специфікації">Специфікації</h2>
<table class="spectable standard-table">
<tbody>
<tr>
<th scope="col">Specification</th>
<th scope="col">Status</th>
<th scope="col">Comment</th>
</tr>
<tr>
<td>{{SpecName('HTML WHATWG','webappapis.html#handler-onkeydown','onkeydown')}}</td>
<td>{{Spec2('HTML WHATWG')}}</td>
<td></td>
</tr>
</tbody>
</table>
<h2 id="Сумісність_з_браузерами">Сумісність з браузерами </h2>
<p>{{Compat("api.GlobalEventHandlers.onkeydown")}}</p>
<h3 id="Нотатки_щодо_сумісності">Нотатки щодо сумісності</h3>
<p>Так якб Firefox 65 події клавіатури і ключа тепер запускаються під час складання IME, для поліпшення крос-браузерної сумісності для користувачів CJKT (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=354358" rel="noopener">bug 354358</a>, також більш детальну інформацію дивіться <a href="https://www.fxsitecompat.com/en-CA/docs/2018/keydown-and-keyup-events-are-now-fired-during-ime-composition/" rel="noopener">keydown and keyup події наразі запускаються під час складання IME</a>. Щоб проігнорувати всі події <code>keyup</code> , зробіть щось на зразок цього (229 це спеціальний набір значень для <code>keyCode</code> що відноситься до читу, який був використаний IME):</p>
<pre class="brush: js"><code>eventTarget.addEventListener("keydown", event => {
if (event.isComposing || event.keyCode === 229) {
return;
}
// зробити що-небудь });</code>
</pre>
<h2 id="See_also">See also</h2>
<ul>
<li>Подія {{Event("keydown")}} </li>
<li>Пов'язані обробники подій
<ul>
<li>{{domxref("GlobalEventHandlers.onkeypress")}}</li>
<li>{{domxref("GlobalEventHandlers.onkeyup")}}</li>
</ul>
</li>
</ul>
|