props.html 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540
  1. <!doctype html>
  2. <html>
  3. <body>
  4. <script>
  5. !function() {
  6. var names = [];
  7. var scanned = [];
  8. var to_scan = [];
  9. function scan(obj) {
  10. if (obj && typeof obj == "object" && !~scanned.indexOf(obj)) {
  11. scanned.push(obj);
  12. to_scan.push(obj);
  13. }
  14. }
  15. scan(self);
  16. [
  17. "a",
  18. "abbr",
  19. "acronym",
  20. "address",
  21. "applet",
  22. "area",
  23. "article",
  24. "aside",
  25. "audio",
  26. "b",
  27. "base",
  28. "basefont",
  29. "bdi",
  30. "bdo",
  31. "bgsound",
  32. "big",
  33. "blink",
  34. "blockquote",
  35. "body",
  36. "br",
  37. "button",
  38. "canvas",
  39. "caption",
  40. "center",
  41. "checked",
  42. "cite",
  43. "code",
  44. "col",
  45. "colgroup",
  46. "command",
  47. "comment",
  48. "compact",
  49. "content",
  50. "data",
  51. "datalist",
  52. "dd",
  53. "declare",
  54. "defer",
  55. "del",
  56. "details",
  57. "dfn",
  58. "dialog",
  59. "dir",
  60. "disabled",
  61. "div",
  62. "dl",
  63. "dt",
  64. "element",
  65. "em",
  66. "embed",
  67. "fieldset",
  68. "figcaption",
  69. "figure",
  70. "font",
  71. "footer",
  72. "form",
  73. "frame",
  74. "frameset",
  75. "h1",
  76. "h2",
  77. "h3",
  78. "h4",
  79. "h5",
  80. "h6",
  81. "head",
  82. "header",
  83. "hgroup",
  84. "hr",
  85. "html",
  86. "i",
  87. "iframe",
  88. "image",
  89. "img",
  90. "input",
  91. "ins",
  92. "isindex",
  93. "ismap",
  94. "kbd",
  95. "keygen",
  96. "label",
  97. "legend",
  98. "li",
  99. "link",
  100. "listing",
  101. "main",
  102. "map",
  103. "mark",
  104. "marquee",
  105. "math",
  106. "menu",
  107. "menuitem",
  108. "meta",
  109. "meter",
  110. "multicol",
  111. "multiple",
  112. "nav",
  113. "nobr",
  114. "noembed",
  115. "noframes",
  116. "nohref",
  117. "noresize",
  118. "noscript",
  119. "noshade",
  120. "nowrap",
  121. "object",
  122. "ol",
  123. "optgroup",
  124. "option",
  125. "output",
  126. "p",
  127. "param",
  128. "picture",
  129. "plaintext",
  130. "pre",
  131. "progress",
  132. "q",
  133. "rb",
  134. "readonly",
  135. "rp",
  136. "rt",
  137. "rtc",
  138. "ruby",
  139. "s",
  140. "samp",
  141. "script",
  142. "section",
  143. "select",
  144. "selected",
  145. "shadow",
  146. "small",
  147. "source",
  148. "spacer",
  149. "span",
  150. "strike",
  151. "strong",
  152. "style",
  153. "sub",
  154. "summary",
  155. "sup",
  156. "svg",
  157. "table",
  158. "tbody",
  159. "td",
  160. "template",
  161. "textarea",
  162. "tfoot",
  163. "th",
  164. "thead",
  165. "time",
  166. "title",
  167. "tr",
  168. "track",
  169. "tt",
  170. "u",
  171. "ul",
  172. "var",
  173. "video",
  174. "wbr",
  175. "xmp",
  176. "XXX",
  177. ].forEach(function(tag) {
  178. scan(document.createElement(tag));
  179. });
  180. [
  181. "abort",
  182. "absolutedeviceorientation",
  183. "activate",
  184. "active",
  185. "addsourcebuffer",
  186. "addstream",
  187. "addtrack",
  188. "afterprint",
  189. "afterscriptexecute",
  190. "afterupdate",
  191. "animationcancel",
  192. "animationend",
  193. "animationiteration",
  194. "animationstart",
  195. "appinstalled",
  196. "audioend",
  197. "audioprocess",
  198. "audiostart",
  199. "autocomplete",
  200. "autocompleteerror",
  201. "auxclick",
  202. "beforeactivate",
  203. "beforecopy",
  204. "beforecut",
  205. "beforedeactivate",
  206. "beforeeditfocus",
  207. "beforeinstallprompt",
  208. "beforepaste",
  209. "beforeprint",
  210. "beforescriptexecute",
  211. "beforeunload",
  212. "beforeupdate",
  213. "blocked",
  214. "blur",
  215. "bounce",
  216. "boundary",
  217. "cached",
  218. "cancel",
  219. "candidatewindowhide",
  220. "candidatewindowshow",
  221. "candidatewindowupdate",
  222. "canplay",
  223. "canplaythrough",
  224. "cellchange",
  225. "change",
  226. "chargingchange",
  227. "chargingtimechange",
  228. "checking",
  229. "click",
  230. "close",
  231. "compassneedscalibration",
  232. "complete",
  233. "connect",
  234. "connecting",
  235. "connectionstatechange",
  236. "contextmenu",
  237. "controllerchange",
  238. "controlselect",
  239. "copy",
  240. "cuechange",
  241. "cut",
  242. "dataavailable",
  243. "datachannel",
  244. "datasetchanged",
  245. "datasetcomplete",
  246. "dblclick",
  247. "deactivate",
  248. "devicechange",
  249. "devicelight",
  250. "devicemotion",
  251. "deviceorientation",
  252. "deviceorientationabsolute",
  253. "deviceproximity",
  254. "dischargingtimechange",
  255. "disconnect",
  256. "display",
  257. "downloading",
  258. "drag",
  259. "dragend",
  260. "dragenter",
  261. "dragexit",
  262. "dragleave",
  263. "dragover",
  264. "dragstart",
  265. "drop",
  266. "durationchange",
  267. "emptied",
  268. "encrypted",
  269. "end",
  270. "ended",
  271. "enter",
  272. "enterpictureinpicture",
  273. "error",
  274. "errorupdate",
  275. "exit",
  276. "filterchange",
  277. "finish",
  278. "focus",
  279. "focusin",
  280. "focusout",
  281. "freeze",
  282. "fullscreenchange",
  283. "fullscreenerror",
  284. "gesturechange",
  285. "gestureend",
  286. "gesturestart",
  287. "gotpointercapture",
  288. "hashchange",
  289. "help",
  290. "icecandidate",
  291. "iceconnectionstatechange",
  292. "icegatheringstatechange",
  293. "inactive",
  294. "input",
  295. "invalid",
  296. "keydown",
  297. "keypress",
  298. "keyup",
  299. "languagechange",
  300. "layoutcomplete",
  301. "leavepictureinpicture",
  302. "levelchange",
  303. "load",
  304. "loadeddata",
  305. "loadedmetadata",
  306. "loadend",
  307. "loading",
  308. "loadingdone",
  309. "loadingerror",
  310. "loadstart",
  311. "losecapture",
  312. "lostpointercapture",
  313. "mark",
  314. "message",
  315. "messageerror",
  316. "mousedown",
  317. "mouseenter",
  318. "mouseleave",
  319. "mousemove",
  320. "mouseout",
  321. "mouseover",
  322. "mouseup",
  323. "mousewheel",
  324. "move",
  325. "moveend",
  326. "movestart",
  327. "mozfullscreenchange",
  328. "mozfullscreenerror",
  329. "mozorientationchange",
  330. "mozpointerlockchange",
  331. "mozpointerlockerror",
  332. "mscontentzoom",
  333. "msfullscreenchange",
  334. "msfullscreenerror",
  335. "msgesturechange",
  336. "msgesturedoubletap",
  337. "msgestureend",
  338. "msgesturehold",
  339. "msgesturestart",
  340. "msgesturetap",
  341. "msgotpointercapture",
  342. "msinertiastart",
  343. "mslostpointercapture",
  344. "msmanipulationstatechanged",
  345. "msneedkey",
  346. "msorientationchange",
  347. "mspointercancel",
  348. "mspointerdown",
  349. "mspointerenter",
  350. "mspointerhover",
  351. "mspointerleave",
  352. "mspointermove",
  353. "mspointerout",
  354. "mspointerover",
  355. "mspointerup",
  356. "mssitemodejumplistitemremoved",
  357. "msthumbnailclick",
  358. "negotiationneeded",
  359. "nomatch",
  360. "noupdate",
  361. "obsolete",
  362. "offline",
  363. "online",
  364. "open",
  365. "orientationchange",
  366. "pagechange",
  367. "pagehide",
  368. "pageshow",
  369. "paste",
  370. "pause",
  371. "play",
  372. "playing",
  373. "pluginstreamstart",
  374. "pointercancel",
  375. "pointerdown",
  376. "pointerenter",
  377. "pointerleave",
  378. "pointerlockchange",
  379. "pointerlockerror",
  380. "pointermove",
  381. "pointerout",
  382. "pointerover",
  383. "pointerup",
  384. "popstate",
  385. "progress",
  386. "propertychange",
  387. "ratechange",
  388. "reading",
  389. "readystatechange",
  390. "rejectionhandled",
  391. "removesourcebuffer",
  392. "removestream",
  393. "removetrack",
  394. "reset",
  395. "resize",
  396. "resizeend",
  397. "resizestart",
  398. "resourcetimingbufferfull",
  399. "result",
  400. "resume",
  401. "rowenter",
  402. "rowexit",
  403. "rowsdelete",
  404. "rowsinserted",
  405. "scroll",
  406. "search",
  407. "seeked",
  408. "seeking",
  409. "select",
  410. "selectionchange",
  411. "selectstart",
  412. "show",
  413. "signalingstatechange",
  414. "soundend",
  415. "soundstart",
  416. "sourceclose",
  417. "sourceclosed",
  418. "sourceended",
  419. "sourceopen",
  420. "speechend",
  421. "speechstart",
  422. "stalled",
  423. "start",
  424. "statechange",
  425. "stop",
  426. "storage",
  427. "storagecommit",
  428. "submit",
  429. "success",
  430. "suspend",
  431. "textinput",
  432. "timeout",
  433. "timeupdate",
  434. "toggle",
  435. "touchcancel",
  436. "touchend",
  437. "touchmove",
  438. "touchstart",
  439. "track",
  440. "transitioncancel",
  441. "transitionend",
  442. "transitionrun",
  443. "transitionstart",
  444. "unhandledrejection",
  445. "unload",
  446. "updateready",
  447. "upgradeneeded",
  448. "userproximity",
  449. "versionchange",
  450. "visibilitychange",
  451. "voiceschanged",
  452. "volumechange",
  453. "vrdisplayactivate",
  454. "vrdisplayconnect",
  455. "vrdisplaydeactivate",
  456. "vrdisplaydisconnect",
  457. "vrdisplaypresentchange",
  458. "waiting",
  459. "waitingforkey",
  460. "warning",
  461. "webkitanimationend",
  462. "webkitanimationiteration",
  463. "webkitanimationstart",
  464. "webkitcurrentplaybacktargetiswirelesschanged",
  465. "webkitfullscreenchange",
  466. "webkitfullscreenerror",
  467. "webkitkeyadded",
  468. "webkitkeyerror",
  469. "webkitkeymessage",
  470. "webkitneedkey",
  471. "webkitorientationchange",
  472. "webkitplaybacktargetavailabilitychanged",
  473. "webkitpointerlockchange",
  474. "webkitpointerlockerror",
  475. "webkitresourcetimingbufferfull",
  476. "webkittransitionend",
  477. "wheel",
  478. "zoom",
  479. ].forEach(function(type) {
  480. [
  481. "beforeunloadevent",
  482. "compositionevent",
  483. "customevent",
  484. "devicemotionevent",
  485. "deviceorientationevent",
  486. "dragevent",
  487. "event",
  488. "events",
  489. "focusevent",
  490. "hashchangeevent",
  491. "htmlevents",
  492. "keyboardevent",
  493. "messageevent",
  494. "mouseevent",
  495. "mouseevents",
  496. "storageevent",
  497. "svgevents",
  498. "textevent",
  499. "touchevent",
  500. "uievent",
  501. "uievents",
  502. ].forEach(function(interface) {
  503. try {
  504. var event = document.createEvent(interface);
  505. event.initEvent(type, true, true);
  506. scan(event);
  507. } catch (e) {}
  508. });
  509. });
  510. var obj;
  511. while (obj = to_scan.shift()) {
  512. var proto = obj;
  513. do {
  514. Object.getOwnPropertyNames(proto).forEach(function(name) {
  515. var visited = ~names.indexOf(name);
  516. if (!visited) names.push(name);
  517. try {
  518. scan(obj[name]);
  519. if (visited) return;
  520. if (/^create/.test(name)) {
  521. scan(obj[name]());
  522. }
  523. if (/^[A-Z]/.test(name)) {
  524. scan(new obj[name]());
  525. }
  526. } catch (e) {}
  527. });
  528. } while (proto = Object.getPrototypeOf(proto));
  529. }
  530. names.sort();
  531. document.write('<pre>[\n "');
  532. document.write(names.join('",\n "'));
  533. document.write('"\n]</pre>');
  534. }();
  535. </script>
  536. </body>
  537. </html>