You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					62 lines
				
				1.6 KiB
			
		
		
			
		
	
	
					62 lines
				
				1.6 KiB
			| 
								 
											4 years ago
										 
									 | 
							
								<html>
							 | 
						||
| 
								 | 
							
								  <head>
							 | 
						||
| 
								 | 
							
								  </head>
							 | 
						||
| 
								 | 
							
								  <body>
							 | 
						||
| 
								 | 
							
								    <script>(function(){
							 | 
						||
| 
								 | 
							
								      var props = {};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      function addObject(obj) {
							 | 
						||
| 
								 | 
							
								        if (obj == null) return;
							 | 
						||
| 
								 | 
							
								        try {
							 | 
						||
| 
								 | 
							
								          Object.getOwnPropertyNames(obj).forEach(add);
							 | 
						||
| 
								 | 
							
								        } catch(ex) {}
							 | 
						||
| 
								 | 
							
								        if (obj.prototype) {
							 | 
						||
| 
								 | 
							
								          Object.getOwnPropertyNames(obj.prototype).forEach(add);
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								        if (typeof obj == "function") {
							 | 
						||
| 
								 | 
							
								          try {
							 | 
						||
| 
								 | 
							
								            Object.getOwnPropertyNames(new obj).forEach(add);
							 | 
						||
| 
								 | 
							
								          } catch(ex) {}
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      function add(name) {
							 | 
						||
| 
								 | 
							
								        props[name] = true;
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      Object.getOwnPropertyNames(window).forEach(function(thing){
							 | 
						||
| 
								 | 
							
								        addObject(window[thing]);
							 | 
						||
| 
								 | 
							
								      });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      try {
							 | 
						||
| 
								 | 
							
								        addObject(new Event("click"));
							 | 
						||
| 
								 | 
							
								        addObject(new Event("contextmenu"));
							 | 
						||
| 
								 | 
							
								        addObject(new Event("mouseup"));
							 | 
						||
| 
								 | 
							
								        addObject(new Event("mousedown"));
							 | 
						||
| 
								 | 
							
								        addObject(new Event("keydown"));
							 | 
						||
| 
								 | 
							
								        addObject(new Event("keypress"));
							 | 
						||
| 
								 | 
							
								        addObject(new Event("keyup"));
							 | 
						||
| 
								 | 
							
								      } catch(ex) {}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      var ta = document.createElement("textarea");
							 | 
						||
| 
								 | 
							
								      ta.style.width = "100%";
							 | 
						||
| 
								 | 
							
								      ta.style.height = "20em";
							 | 
						||
| 
								 | 
							
								      ta.style.boxSizing = "border-box";
							 | 
						||
| 
								 | 
							
								      <!-- ta.value = Object.keys(props).sort(cmp).map(function(name){ -->
							 | 
						||
| 
								 | 
							
								      <!--   return JSON.stringify(name); -->
							 | 
						||
| 
								 | 
							
								      <!-- }).join(",\n"); -->
							 | 
						||
| 
								 | 
							
								      ta.value = JSON.stringify({
							 | 
						||
| 
								 | 
							
								        vars: [],
							 | 
						||
| 
								 | 
							
								        props: Object.keys(props).sort(cmp)
							 | 
						||
| 
								 | 
							
								      }, null, 2);
							 | 
						||
| 
								 | 
							
								      document.body.appendChild(ta);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								      function cmp(a, b) {
							 | 
						||
| 
								 | 
							
								        a = a.toLowerCase();
							 | 
						||
| 
								 | 
							
								        b = b.toLowerCase();
							 | 
						||
| 
								 | 
							
								        return a < b ? -1 : a > b ? 1 : 0;
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								    })();</script>
							 | 
						||
| 
								 | 
							
								  </body>
							 | 
						||
| 
								 | 
							
								</html>
							 |