aboutsummaryrefslogtreecommitdiff
path: root/files/ja/archive/mozilla/xul/events/index.html
blob: cf7a035673c94f52c8f47a3848b6bf5f5f505d6c (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
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
---
title: イベント
slug: Archive/Mozilla/XUL/Events
tags:
  - XUL_Events
translation_of: Archive/Mozilla/XUL/Events
---
<p> </p>

<p><a href="https://developer.mozilla.org/ja/docs/XUL_Reference" title="« XUL リファレンス HOME">« XUL リファレンス HOME</a></p>

<p> </p>

<p>次の表は、ほとんどの XUL 要素で有効なイベントハンドラについて書かれています。イベントリスナーは <a href="ja/DOM/element.addEventListener"> addEventListener</a> で追加し、<a href="ja/DOM/element.removeEventListener"> removeEventListener</a> で削除することができます。</p>

<p>一部のイベントは、属性を使用して同様に追加することができます。属性を使用してイベントリスナーを追加した場合は、一度に一つのリスナーしか追加できません。先に追加されたリスナーは切断されます。属性名はイベント名のプレフィックスに 'on' を付加したものです。</p>

<h3 id=".E7.B6.99.E6.89.BF_DOM_.E3.82.A4.E3.83.99.E3.83.B3.E3.83.88" name=".E7.B6.99.E6.89.BF_DOM_.E3.82.A4.E3.83.99.E3.83.B3.E3.83.88">継承 DOM イベント</h3>

<table class="fullwidth-table">
 <tbody>
  <tr>
   <th>イベント</th>
   <th>説明</th>
  </tr>
  <tr>
   <td>
    <p>blur</p>
   </td>
   <td>
    <p>focus イベントの反対。blur イベントは要素がフォーカスを失った後、渡されます。<br>
     <strong>属性:</strong> onblur</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>change</p>
   </td>
   <td>
    <p>このイベントは textbox の値が変更された時、送られます。このイベントはフォーカスが他の要素に移されるまで送られません。<br>
     <strong>属性:</strong> onchange</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>click</p>
   </td>
   <td>
    <p>このイベントはマウスボタンが押下され、離された時、送られます。イベントオブジェクトの <code>button</code> プロパティを調べることによって、クリックされたマウスボタンを確定することができます。またこのイベントは、ユーザがマウスでダブルクリックした時も送られます。<code>detail</code> プロパティはクリックが何回発生したかを特定します。同様にトリプルクリックも確認することができます。ユーザのアクションに応答するために、XUL 内でこのイベントを使用してはいけません。代わりに <code>command</code> イベントを使用してください。<br>
     <strong>属性:</strong> onclick</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>dblclick</p>
   </td>
   <td>
    <p>このイベントは click イベントのように、ユーザがマウスでダブルクリックした時のみ送られます。 これは click イベント内の detail プロパティの確認の代替手段です。<br>
     <strong>属性:</strong> ondblclick</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>DOMMouseScroll</p>
   </td>
   <td>
    <p>このイベントはマウスホイールが動かされた時、コンテンツがスクロールされたかどうかに関わらず送られます。<br>
     イベントのターゲットは、<code>click</code> イベントのように、マウスホイールがスクロールされた時、マウスポインタの下にある要素です。</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>focus</p>
   </td>
   <td>
    <p>focus イベントは、フォーカスを受け取った時、要素に送られます。要素がフォーカスを持つと、キーボードイベントがその要素に送られます。要素をクリックするか TAB を押下して次の要素に移動すると、フォーカスを変更することができます。<br>
     <strong>属性:</strong> onfocus</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>keydown</p>
   </td>
   <td>
    <p>keydown イベントは、フォーカスを持ち、キーが押下されたままの状態の要素に送られます。<br>
     <strong>属性:</strong> onkeydown</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>keypress</p>
   </td>
   <td>
    <p>keypress イベントは、フォーカスを持ち、キーが押下され離された要素に送られます。 ユーザがキーを押下すると、まず keydown イベントが送られ、次に keypress イベント、それから keyup イベントが送られます。textbox 内では、ユーザがキーを押下したまま文字を繰り返し入力することができます。この場合、ユーザがすばやく同じキーを繰り返し押下したように、複数のキーイベントセットが送られます。<br>
     <strong>属性:</strong> onkeypress</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>keyup</p>
   </td>
   <td>
    <p>keyup イベントは、フォーカスを持ち、キーが離された要素に送られます。<br>
     <strong>属性:</strong> onkeyup</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>load</p>
   </td>
   <td>
    <p>このイベントは、window が完全に読み込まれた後、window に送られます。このイベントハンドラは window 要素上に置かなければなりません。またこのイベントは、image 要素、または image 属性を使用できる要素上でも使用でき、画像の読み込みが完了した時、発動します。image について、このイベントは要素ツリーを浮上 (<span style="color: green;">bubble up</span>)しないため、window の load イベントと衝突しません。<br>
     <strong>属性:</strong> onload</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>mousedown</p>
   </td>
   <td>
    <p>このイベントは、マウスボタンが要素上で押下されたままの状態の時、送られます。<br>
     <strong>属性:</strong> onmousedown</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>mousemove</p>
   </td>
   <td>
    <p>このイベントは、マウスが要素上を移動するたびに繰り返し送られます。<br>
     <strong>属性:</strong> onmousemove</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>mouseout</p>
   </td>
   <td>
    <p>この mouseout イベントは、ユーザがマウスを要素の外に移動した時、その要素に送られます。このイベントは mouseover の逆です。<br>
     <strong>属性:</strong> onmouseout</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>mouseover</p>
   </td>
   <td>
    <p>このイベントは、マウスが要素上に初めて移動した時、送られます。このイベントは、ユーザへのフィードバックの提供に利用することができます。<br>
     <strong>属性:</strong> onmouseover</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>mouseup</p>
   </td>
   <td>
    <p>このイベントは、要素上でマウスボタンが離された時、送られます。<br>
     <strong>属性:</strong> onmouseup</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>select</p>
   </td>
   <td>
    <p>このイベントは、項目が選択された時、listbox や tree に送られます。<br>
     <strong>属性:</strong> onselect</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>unload</p>
   </td>
   <td>
    <p>このイベントは、window が閉じられた時、window に送られます。これは close イベントの後、送られます。このイベントハンドラは window 要素上に置かなければなりません。<br>
     <strong>属性:</strong> onunload</p>
   </td>
  </tr>
 </tbody>
</table>

<h3 id=".E5.A4.89.E7.95.B0_DOM_.E3.82.A4.E3.83.99.E3.83.B3.E3.83.88" name=".E5.A4.89.E7.95.B0_DOM_.E3.82.A4.E3.83.99.E3.83.B3.E3.83.88">変異 DOM イベント</h3>

<table class="fullwidth-table">
 <tbody>
  <tr>
   <th>イベント</th>
   <th>説明</th>
  </tr>
  <tr>
   <td>
    <p>DOMAttrModified</p>
   </td>
   <td>
    <p>このイベントは要素の属性の一つが変更された時、その要素に送られます。イベントハンドラ内では、イベントの attrName プロパティを使用して変更された属性を取得することができます。またイベントの prevValue および newValue プロパティを使用して、属性の古い値と新しい値を取得することができます。</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>DOMNodeInserted</p>
   </td>
   <td>
    <p>このイベントは要素の子としてノードが追加された時、送られます。document レベルでこのイベントを捕捉すると、 document の変更についての通知を受けることができます。</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>DOMNodeRemoved</p>
   </td>
   <td>
    <p>このイベントは要素からノードが削除された時、送られます。document レベルでこのイベントを捕捉すると、 document の変更についての通知を受けることができます。</p>
   </td>
  </tr>
 </tbody>
</table>

<p>ドキュメント内に変異イベントリスナが存在すると、それ以降そのドキュメントに対する DOM 操作のパフォーマンスが低下することに注意してください。簡単なテストでは、変異イベントがない場合よりも DOM 操作に 1.5 から 7 倍の時間がかかります。</p>

<h3 id=".E5.85.B1.E9.80.9A.E3.81.AE_XUL_.E3.82.A4.E3.83.99.E3.83.B3.E3.83.88" name=".E5.85.B1.E9.80.9A.E3.81.AE_XUL_.E3.82.A4.E3.83.99.E3.83.B3.E3.83.88">共通の XUL イベント</h3>

<table class="fullwidth-table">
 <tbody>
  <tr>
   <th>イベント</th>
   <th>説明</th>
  </tr>
  <tr>
   <td>
    <p>broadcast</p>
   </td>
   <td>
    <p>このイベントハンドラは observer 上に置かなければなりません。broadcast イベントは (broadcaster などの) 監視されている要素の属性が変更された時、送られます。<br>
     <strong>属性:</strong> onbroadcast</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>close</p>
   </td>
   <td>
    <p>このイベントは、ユーザが「閉じる」ボタンを押下し、window を閉じるように要求した時に送られます。イベントハンドラを window 要素上に置くと、window が閉じるのをトラップすることができます。close ハンドラが false を返すと、window は閉じません。true を返すと通常どおり閉じます。このイベントは、ユーザがタイトルバー上の「閉じる」ボタンを押下した時のみ発生するので注意してください。window を閉じるイベントすべてを捕捉するには unload イベントを使用してください。<br>
     <strong>属性:</strong> onclose</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>command</p>
   </td>
   <td>
    <p>このイベントハンドラは要素が活性化された時、呼び出されます。各要素を活性化するには様々な方法があります。例えばボタンは、フォーカスされている間に、マウスでクリックしたり ENTER を押下することによって活性化することができます。メニューはマウスで選択するか、ショートカットキーの押下によって活性化することができます。このイベントは必要な場合のすべてにおいて呼ばれるため、クリックの代わりに、常に command イベントを使用してください。<br>
     <strong>属性:</strong> oncommand</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>commandupdate</p>
   </td>
   <td>
    <p>このイベントは、コマンドの更新が &lt;commandset&gt; 要素上で起こったとき、発生します。これは、項目の無効状態を更新するために使用します。<br>
     <strong>属性:</strong> oncommandupdate</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>contextmenu</p>
   </td>
   <td>
    <p>このイベントは、ユーザが要素のコンテキストメニューを開こうとした時、その要素に送られます。 この開く動作はプラットフォームによって異なりますが、一般的には右クリックです。このハンドラは通常、ユーザがメニューを表示しようとした時にメニュー上のコマンドを動的に設定するのに使用されますが、popupshowing イベントを使用しても同様のことができます。このイベントハンドラが false を返すと、ポップアップの表示が抑止されます。<br>
     <strong>属性:</strong> oncontextmenu</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>drag </p>
   </td>
   <td>
    <p>drag イベントはドラッグが発生している間、source ノード (ドラックされたノード) に送られ続けます。<br>
     <strong>属性:</strong> ondrag</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>dragdrop</p>
   </td>
   <td>
    <p>このイベントは、ドラッグしていたオブジェクトをマウスボタンを離してドロップした時、送られます。要素がドロップを受け入れる場合には、ドラッグされたオブジェクトがそこに挿入されるなど、何らかの反応を返すべきです。<br>
     <strong>属性:</strong> ondragdrop</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>dragend </p>
   </td>
   <td>
    <p>dragend イベントは、ドラッグが終わった時、source ノード (ドラッグされたノード) に送られます。<br>
     <strong>属性:</strong> ondragend</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>dragenter</p>
   </td>
   <td>
    <p>dragenter イベントは、マウスポインタがドラッグしながら最初に要素上を移動した時、送られます。これは mouseover イベントに似ていますが、ドラッグ中に発生します。<br>
     <strong>属性:</strong> ondragenter</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>dragexit</p>
   </td>
   <td>
    <p>このイベントは、マウスポインタがドラッグ中に要素上から離れた時、送られます。これは要素上にドロップした後にも呼び出されます。これは mouseout イベントに似ていますが、ドラッグ中に発生します。<br>
     <strong>属性:</strong> ondragexit</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>draggesture</p>
   </td>
   <td>
    <p>このイベントは、ユーザがマウスボタンを押したまま移動させて要素をドラッグし始めた時、送られます。<br>
     <strong>属性:</strong> ondraggesture</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>dragover</p>
   </td>
   <td>
    <p>mousemove イベントに関連します。このイベントは、要素上を何かがドラッグされた時、送られます。ハンドラはドラッグされているオブジェクトをドロップできるかどうかを示すべきです。<br>
     <strong>属性:</strong> ondragover</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>input</p>
   </td>
   <td>
    <p>このイベントは、ユーザが textbox にテキストを入力した時、送られます。このイベントは表示されたテキストが変更される場合のみ呼び出されるため、表示されないキーを押下しても呼び出されません。<br>
     <strong>属性:</strong> oninput</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>overflow</p>
   </td>
   <td>
    <p>このイベントは、CSS の overflow プロパティが 'visible' 以外の値を持つ、box やその他のレイアウト要素にのみ送られます。要素のコンテンツをフルサイズで表示する十分な空間が無い場合、overflow イベントが発生します。overflow プロパティの値によっては scrollbar が現れます。例えば、box の最大サイズが 100 ピクセルで十分な空間が 80 ピクセルしか利用できないとき、overflow イベントが box に送られます。ユーザによって window のサイズが変更されるなどして要素のサイズが変更され、十分な空間が利用可能になると underflow イベントが発生します。<br>
     <strong>属性:</strong> onoverflow</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>popuphidden</p>
   </td>
   <td>
    <p>このイベントは popup が隠れた後、その popup に送られます。<br>
     <strong>属性:</strong> onpopuphidden</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>popuphiding</p>
   </td>
   <td>
    <p>このイベントは popup が隠されようとしている時、その popup に送られます。<br>
     <strong>属性:</strong> onpopuphiding</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>popupshowing</p>
   </td>
   <td>
    <p>このイベントは popup が開かれる直前に、その popup に送られます。このハンドラは通常、ユーザがポップアップの表示を要求したときに、コンテンツを動的に設定するのに使用されます。このイベントハンドラが false を返すと、ポップアップの表示が抑止されます。<br>
     <strong>属性:</strong> onpopupshowing</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>popupshown</p>
   </td>
   <td>
    <p>このイベントは onload イベントが開かれた window に送られるように、popup が開かれた後、その popup に送られます。<br>
     <strong>属性:</strong> onpopupshown</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>syncfrompreference</p>
   </td>
   <td>
    <p>このイベントは、設定 (<span style="color: green;">preference</span>)の変更によって要素が変更されようとしているとき、または設定から要素が初期化されるときに送られます。このイベントは、<a href="ja/XUL/prefwindow"> prefwindow</a> 内にあり、設定に接続されている要素にのみ送られます。これは実際のイベントではなく単なる関数呼び出しなので、属性構文を使用しなければなりません。スクリプトから何らかの値を返すことにより、設定の値の代わりに特定の値を要素に設定することができます。通常このイベントは、設定値をよりユーザインターフェイスとしてわかりやすいものにするために使用します。<br>
     <strong>属性:</strong> onsyncfrompreference</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>synctopreference</p>
   </td>
   <td>
    <p>このイベントは、設定に接続されている要素に変更が加えられたときに送られます。このイベントは、<a href="ja/XUL/prefwindow"> prefwindow</a> 内にあり、設定に接続されている要素にのみ送られます。これは実際のイベントではなく単なる関数呼び出しなので、属性構文を使用しなければなりません。スクリプトから何らかの値を返すことにより、設定に要素の値の代わりに特定の値を設定することができます。<br>
     <strong>属性:</strong> onsynctopreference</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>underflow</p>
   </td>
   <td>
    <p>このイベントは、要素をフルサイズで表示するのに十分な空間ができた時、その要素に送られます。これは CSS の overflow プロパティが 'visible' 以外の値を持つ、box やその他のレイアウト要素に適用されます。underflow イベントは、スクロール機構が必要なくなったことを示すために使用されます。<br>
     <strong>属性:</strong> onunderflow</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>DOMMenuItemActive</p>
   </td>
   <td>
    <p>このイベントは、menu または menuitem がポイントやハイライトがされた時、送られます。このイベントは浮上します。</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>DOMMenuItemInactive</p>
   </td>
   <td>
    <p>このイベントは、menu や menuitem がポイントやハイライトがされなくなった時、送られます。このイベントは浮上します。</p>
   </td>
  </tr>
 </tbody>
</table>

<h3 id=".E3.82.A2.E3.82.AF.E3.82.BB.E3.82.B7.E3.83.93.E3.83.AA.E3.83.86.E3.82.A3.E3.82.A4.E3.83.99.E3.83.B3.E3.83.88" name=".E3.82.A2.E3.82.AF.E3.82.BB.E3.82.B7.E3.83.93.E3.83.AA.E3.83.86.E3.82.A3.E3.82.A4.E3.83.99.E3.83.B3.E3.83.88">アクセシビリティイベント</h3>

<p>これらのイベントは、要素に変更が加えられたことをアクセシビリティシステムに知らせるために使用されます。通常は、これらを使用することはありません。</p>

<table class="fullwidth-table">
 <tbody>
  <tr>
   <th>イベント</th>
   <th>説明</th>
  </tr>
  <tr>
   <td>
    <p>CheckboxStateChange</p>
   </td>
   <td>
    <p>このイベントは、ユーザやスクリプトによって <a href="ja/XUL/checkbox"> checkbox</a> にチェックが入ったり外れたりした時、送られます。checkbox の変更を調べるには、通常、command イベントを使用しますが、command イベントはユーザが値を変更した場合のみ送られるのに対して、CheckboxStateChange イベントはスクリプトが checkbox の checked プロパティを変更した場合にも送られます。ユーザが変更した場合、CheckboxStateChange イベントは command イベントの前に送られます。CheckboxStateChange イベントは浮上しません。</p>
   </td>
  </tr>
  <tr>
   <td>
    <p>RadioStateChange</p>
   </td>
   <td>
    <p>このイベントは、ユーザやスクリプトによって <a href="ja/XUL/radio"> radio</a> ボタンが選択された時、送られます。radio button の選択を調べるには、通常、command イベントを使用しますが、command イベントはユーザが radio button の選択を変更した場合のみ送られるのに対し、RadioStateChange イベントはスクリプトが選択を変更した場合にも送られます。ユーザが変更した場合、RadioStateChange イベントは command イベントの前に送られます。RadioStateChange イベントは浮上するため、radio を内包する <a href="ja/XUL/radiogroup"> radiogroup</a> にイベントハンドラを追加することもできます。</p>
   </td>
  </tr>
 </tbody>
</table>

<div class="noinclude"> </div>