1 |
wakaba |
1.1 |
<!DOCTYPE HTML> |
2 |
|
|
<title>Events</title> |
3 |
|
|
<style> |
4 |
|
|
#eventarea { |
5 |
|
|
background-color: blue; |
6 |
|
|
height: 9em; |
7 |
|
|
overflow: scroll; |
8 |
|
|
} |
9 |
|
|
li code:first-child { |
10 |
|
|
font-weight: bolder; |
11 |
|
|
} |
12 |
|
|
</style> |
13 |
|
|
|
14 |
|
|
<div id=eventarea tabindex=0> |
15 |
|
|
|
16 |
|
|
agewagea g awtg at gages w43t 434 gsa re tag bw t4 4q4tg4 t4wa |
17 |
|
|
3gv enw 4a g4w t4wa aegfe rr r agewagea g awtg at gages w43t 434 gsa |
18 |
|
|
re tag bw t4 4q4tg4 t4wad 3gv enw 4a g4w t4wa aegfe rr ragewagea g |
19 |
|
|
awtg at gages w43t 434 gsa re tag bw t4 4q4tg4 t4wa 3gv enw 4a g4w. |
20 |
|
|
|
21 |
|
|
<p>awtg at gages w43t 434 gsa re tag bw t4 4q4tg4 t4wa 3gv enw 4a g4w |
22 |
|
|
t4wa aegfe rr ragewagea g awtg at gages w43t 434 gsa re tag bw t4 |
23 |
|
|
4q4tg4 t4wa 3gv enw 4a g4w t4wa aegfe rr ragewagea g awtg at gages |
24 |
|
|
w43t 434 gsa re tag bw t4 4q4tg4 t4wa 3gv enw 4a g4w t4wa aegfe rr |
25 |
|
|
|
26 |
|
|
<p><input pattern="[^0-9]+"> <select><option>a<option>b</select> |
27 |
|
|
|
28 |
|
|
<p>t4wa aegfe rr ragewagea g awtg at gages w43t 434 gsa re tag bw t4 |
29 |
|
|
4q4tg4 t4wa 3gv enw 4a g4w t4wa aegfe rr ragewagea g awtg at gages |
30 |
|
|
re tag bw t4 4q4tg4 t4wa3gv enw 4a g4w t4wa aegfe rr r. |
31 |
|
|
</div> |
32 |
|
|
|
33 |
|
|
<ul id=events></ul> |
34 |
|
|
|
35 |
|
|
<script> |
36 |
|
|
var target = document.getElementById ('eventarea'); |
37 |
|
|
var results = document.getElementById ('events'); |
38 |
|
|
|
39 |
|
|
if (target.addEventListener) { |
40 |
|
|
var add = function (event, code) { |
41 |
|
|
target.addEventListener (event, code, false); |
42 |
|
|
}; // add |
43 |
|
|
} else if (target.attachEvent) { |
44 |
|
|
var add = function (event, code) { |
45 |
|
|
target.attachEvent ('on' + event, code); |
46 |
|
|
}; // add |
47 |
|
|
} |
48 |
|
|
|
49 |
|
|
var lastEvent; |
50 |
|
|
var handleEvent = function (event) { |
51 |
|
|
var ev = event || window.event; |
52 |
|
|
if (ev.type == lastEvent) return; |
53 |
|
|
lastEvent = ev.type; |
54 |
|
|
var li = document.createElement ('li'); |
55 |
|
|
li.appendChild (document.createElement ('code')).appendChild (document.createTextNode (ev.type)); |
56 |
|
|
li.appendChild (document.createTextNode (' ')); |
57 |
|
|
for (var n in ev) { |
58 |
|
|
if (ev[n] instanceof Function) continue; |
59 |
|
|
if (/^(?:[0-9A-Z_]+|type|target|currentTarget)$/.test (n)) continue; |
60 |
|
|
li.appendChild (document.createElement ('code')).appendChild (document.createTextNode (n)); |
61 |
|
|
li.appendChild (document.createTextNode (' ')); |
62 |
|
|
li.appendChild (document.createElement ('code')).appendChild (document.createTextNode (ev[n])); |
63 |
|
|
li.appendChild (document.createTextNode ('; ')); |
64 |
|
|
} |
65 |
|
|
results.insertBefore (li, results.firstChild); |
66 |
|
|
}; |
67 |
|
|
|
68 |
|
|
for (var e in { |
69 |
|
|
'click':0, 'dblclick':0, |
70 |
|
|
'mouseover':0, 'mouseenter':0, 'mousedown':0, 'mousemove':0, |
71 |
|
|
'mouseup':0, 'mouseout':0, 'mouseleave': 0, |
72 |
|
|
'wheel':0, |
73 |
|
|
'touchstart':0, 'touchmove':0, 'touchend':0, 'touchcancel':0, |
74 |
|
|
'dragstart':0, 'dragenter':0, 'dragover':0, 'drop':0, 'dragleave':0, |
75 |
|
|
|
76 |
|
|
'focus':0, 'DOMFocusIn':0, 'focusin':0, |
77 |
|
|
'blur':0, 'DOMFocusOut':0, 'focusout':0, |
78 |
|
|
'DOMActivate':0, 'select':0, |
79 |
|
|
'contextmenu':0, |
80 |
|
|
|
81 |
|
|
'keydown':0, 'keypress':0, 'keyup':0, |
82 |
|
|
'textinput':0, |
83 |
|
|
'compositionstart':0, 'compositionupdate':0, 'compositionend':0, |
84 |
|
|
|
85 |
|
|
'scroll':0, |
86 |
|
|
|
87 |
|
|
'input':0, 'change':0, 'forminput':0, 'formchange':0, |
88 |
|
|
'invalid':0, |
89 |
|
|
|
90 |
|
|
'dummry':0 |
91 |
|
|
}) { |
92 |
|
|
add (e, handleEvent); |
93 |
|
|
} |
94 |
|
|
</script> |