Added keyboard shortcuts
This commit is contained in:
		
							parent
							
								
									e9ea6a6a7e
								
							
						
					
					
						commit
						69a911e957
					
				
					 3 changed files with 61 additions and 14 deletions
				
			
		|  | @ -1,3 +1,17 @@ | |||
| function countdown() { | ||||
|     var timeleft = 3; | ||||
|     var reloadTimer = setInterval(function () { | ||||
|         if (timeleft <= 0) { | ||||
|             document.getElementById("next").innerHTML = 0; | ||||
|             clearInterval(reloadTimer); | ||||
|             window.location.replace('/') | ||||
|         } else { | ||||
|             document.getElementById("next").innerHTML = timeleft; | ||||
|         } | ||||
|         timeleft -= 1; | ||||
|     }, 1000); | ||||
| } | ||||
| 
 | ||||
| function autoReload() { | ||||
|     document.querySelectorAll('input[type="radio"]').forEach(function (el) { | ||||
|         el.addEventListener('change', checkForm, { once: true }); | ||||
|  | @ -14,18 +28,4 @@ function autoReload() { | |||
|             countdown(); | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     function countdown() { | ||||
|         var timeleft = 3; | ||||
|         var reloadTimer = setInterval(function () { | ||||
|             if (timeleft <= 0) { | ||||
|                 document.getElementById("next").innerHTML = 0; | ||||
|                 clearInterval(reloadTimer); | ||||
|                 window.location.replace('/') | ||||
|             } else { | ||||
|                 document.getElementById("next").innerHTML = timeleft; | ||||
|             } | ||||
|             timeleft -= 1; | ||||
|         }, 1000); | ||||
|     } | ||||
| } | ||||
							
								
								
									
										45
									
								
								static/js/shortcut.js
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								static/js/shortcut.js
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,45 @@ | |||
| var checkedGroups = 0; | ||||
| 
 | ||||
| function monitorRadio() { | ||||
|     document.querySelectorAll('input[type="radio"]').forEach(function (el) { | ||||
|         el.addEventListener('change', incCounter, { once: true }); | ||||
|     }); | ||||
| } | ||||
| 
 | ||||
| function incCounter() { | ||||
|     checkedGroups++; | ||||
| } | ||||
| 
 | ||||
| function checkCount() { | ||||
|     if (checkedGroups === 5) { | ||||
|         countdown(); | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| window.addEventListener("keydown", function (event) { | ||||
|     if (event.defaultPrevented) { | ||||
|         return; | ||||
|     } | ||||
| 
 | ||||
|     checkCount(); | ||||
| 
 | ||||
|     switch (event.key) { | ||||
|         case "a": | ||||
|             checkedGroups++; | ||||
|             getid = 'a'+checkedGroups; | ||||
|             document.getElementById(getid).checked = true; | ||||
|             checkCount(); | ||||
|             break; | ||||
|         case "b": | ||||
|             checkedGroups++; | ||||
|             getid = 'b'+checkedGroups; | ||||
|             document.getElementById(getid).checked = true; | ||||
|             checkCount(); | ||||
|             break; | ||||
|         default: | ||||
|             checkCount(); | ||||
|             return; | ||||
|     } | ||||
| 
 | ||||
|     event.preventDefault(); | ||||
| }, true); | ||||
|  | @ -9,6 +9,7 @@ | |||
|     <title>{{ title }}</title> | ||||
|     <script type="text/javascript" src="/js/toggle.js?t={{ epoch }}"></script> | ||||
|     <script type="text/javascript" src="/js/autoReload.js?t={{ epoch }}"></script> | ||||
|     <script type="text/javascript" src="/js/shortcut.js?t={{ epoch }}"></script> | ||||
|     <link rel="stylesheet" type="text/css" href="/css/base.css?t={{ epoch }}"> | ||||
|     <link rel="stylesheet" type="text/css" href="/css/colors.css?t={{ epoch }}"> | ||||
|     <link rel="apple-touch-icon" sizes="180x180" href="{{ url_for('static', filename='apple-touch-icon.png') }}"> | ||||
|  | @ -38,6 +39,7 @@ | |||
|     <script type="text/javascript"> | ||||
|         initToggle(); | ||||
|         autoReload(); | ||||
|         monitorRadio(); | ||||
|     </script> | ||||
| </body> | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue