a11y-outline

web extension to navigate document outlines easily
git clone https://git.ce9e.org/a11y-outline.git

commit
116dcf9339b2c8f68b74c6b42e701c4f8a78e09d
parent
09443903e4cd7f0d485ea7e6e877e769a73ca12c
Author
Tobias Bengfort <tobias.bengfort@posteo.de>
Date
2023-01-12 19:00
refactor: reduce code duplication in renderTree()

Diffstat

M outline.js 19 +++++++------------

1 files changed, 7 insertions, 12 deletions


diff --git a/outline.js b/outline.js

@@ -85,25 +85,20 @@ var renderTree = function(role, dialog) {
   85    85 
   86    86 	var ul = treeview(tree, dialog.id + '-' + role);
   87    87 
   -1    88 	var getTarget = function(a) {
   -1    89 		var href = a.getAttribute('href');
   -1    90 		var i = parseInt(href.substr(1), 10);
   -1    91 		return matches[i];
   -1    92 	};
   -1    93 
   88    94 	ul.addEventListener('click', function(event) {
   89    95 		if (event.target.matches('a')) {
   90    96 			event.preventDefault();
   91    97 			dialog.close();
   92    -1 
   93    -1 			var href = event.target.getAttribute('href');
   94    -1 			var i = parseInt(href.substr(1), 10);
   95    -1 			var target = matches[i];
   96    -1 
   97    -1 			focus(target);
   -1    98 			focus(getTarget(event.target));
   98    99 		}
   99   100 	});
  100   101 
  101    -1 	var getTarget = function(a) {
  102    -1 		var href = a.getAttribute('href');
  103    -1 		var i = parseInt(href.substr(1), 10);
  104    -1 		return matches[i];
  105    -1 	};
  106    -1 
  107   102 	var targetSelected = function() {
  108   103 		var target = null;
  109   104