-
Notifications
You must be signed in to change notification settings - Fork 0
/
foo.js
61 lines (58 loc) · 1.06 KB
/
foo.js
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
const uniq = require('arr-union')
const events = require('./src/events')
const arr = [
// attribute events (can be set with attributes)
'onclick',
'ondblclick',
'onmousedown',
'onmouseup',
'onmouseover',
'onmousemove',
'onmouseout',
'onmouseenter',
'onmouseleave',
'ontouchcancel',
'ontouchend',
'ontouchmove',
'ontouchstart',
'ondragstart',
'ondrag',
'ondragenter',
'ondragleave',
'ondragover',
'ondrop',
'ondragend',
'onkeydown',
'onkeypress',
'onkeyup',
'onunload',
'onabort',
'onerror',
'onresize',
'onscroll',
'onselect',
'onchange',
'onsubmit',
'onreset',
'onfocus',
'onblur',
'oninput',
// other common events
'oncontextmenu',
'onfocusin',
'onfocusout'
]
const res = uniq(arr, events).filter(function excludeEvents (name) {
const is = [
'onresume',
'onfreeze',
'onreadystatechange',
'onpointerlockchange',
'onpointerlockerror',
'onselectionchange',
'onvisibilitychange',
'onsecuritypolicyviolation'
].includes(name)
return !is
})
console.log(res.length)