NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript== // @name confluence // @namespace msg // @description Script, dass fehlende Aria Label im Confluence hinzufuegt oder passend ersetzt // @include https://*.david-software.de/* // @license MIT // ==/UserScript== // ==OpenUserJS== // @author Evologics // ==/OpenUserJS== // EventListener, der bei jedem Click auf ein Objekt auf der Website auf unten stehende Styleklassen untersucht window.addEventListener("click", function() { // Fuegt bei tags mit class-Attribut "template-description" den Inhalt der Tags (den Text) als aria-label ein. Dies ist der Inhalt der listitems var attToChange = document.getElementsByClassName('template-description'); for(i = 0; i < attToChange.length; i++){ divToChange = attToChange[i]; divToChange.setAttribute("aria-label", divToChange.textContent); } // Fuegt bei tags mit class-Attribut "template-name" den Inhalt der Tags (den Text) als aria-label ein. Dies sind die Ueberschriften der listitems attToChange = document.getElementsByClassName('template-name'); for(i = 0; i < attToChange.length; i++){ divToChange = attToChange[i]; divToChange.setAttribute("aria-label", divToChange.textContent); } // Fuegt in jedes Listitem selbst (class.Attribut "template") das role und tabindex Attribut hinzu, sodass die Elemente z.B. per Tab ausgewaehlt und benutzt werden koennen attToChange = document.getElementsByClassName('template'); for(i = 0; i < attToChange.length; i++){ divToChange = attToChange[i]; divToChange.setAttribute("role", "button"); divToChange.setAttribute("tabindex", "100"); } // Aendert das aria-hidden Attribut des gesamten Popup Dialogs auf false, damit die aria Funktionalitaet ueberhaupt genutzt werden kann innerhalb der Liste attToChange = document.getElementsByClassName('aui-popup aui-dialog'); for(i = 0; i < attToChange.length; i++){ divToChange = attToChange[i]; divToChange.setAttribute("aria-hidden", "false"); } } );