aboutsummaryrefslogtreecommitdiff
path: root/resources/assets/javascripts
diff options
context:
space:
mode:
authorThomas Hackl <hackl@data-quest.de>2024-04-16 06:22:06 +0000
committerThomas Hackl <hackl@data-quest.de>2024-04-16 06:22:06 +0000
commita5210d73f5e03cfa3b6fc4a7e869400a41c74a45 (patch)
treebd60b867add8e3a8262e9e45da98e79f0c5061ff /resources/assets/javascripts
parentef6f0e8f193ebcfd78d0afb9e01e514ff660a217 (diff)
Resolve "Barrierefreiheit: Auf- und Zuklappverhalten für Screenreader kennzeichnen"
Closes #3960 Merge request studip/studip!2854
Diffstat (limited to 'resources/assets/javascripts')
-rw-r--r--resources/assets/javascripts/bootstrap/studip_helper_attributes.js9
-rw-r--r--resources/assets/javascripts/lib/messages.js2
2 files changed, 11 insertions, 0 deletions
diff --git a/resources/assets/javascripts/bootstrap/studip_helper_attributes.js b/resources/assets/javascripts/bootstrap/studip_helper_attributes.js
index c106de3..aea1823 100644
--- a/resources/assets/javascripts/bootstrap/studip_helper_attributes.js
+++ b/resources/assets/javascripts/bootstrap/studip_helper_attributes.js
@@ -276,6 +276,15 @@ $(document).on('click keydown', '[data-toggles]', function (event) {
$(target).toggle();
}
+ const controls = $(event.currentTarget).attr('aria-controls');
+ if (controls) {
+ // Find elements which control the expanded status of the same element.
+ const elements = $('[aria-controls="' + controls + '"]');
+ const expanded = $(event.currentTarget).attr('aria-expanded') === 'true';
+ // Set the aria-expanded status accordingly.
+ elements.attr('aria-expanded', !expanded);
+ }
+
event.preventDefault();
}
});
diff --git a/resources/assets/javascripts/lib/messages.js b/resources/assets/javascripts/lib/messages.js
index 7ce5328..8e27f8f 100644
--- a/resources/assets/javascripts/lib/messages.js
+++ b/resources/assets/javascripts/lib/messages.js
@@ -252,6 +252,8 @@ const Messages = {
if (jQuery('#' + name).is(':visible')) {
jQuery('#' + name)[0].scrollIntoView(false);
}
+ jQuery('#toggle-' + name)
+ .attr('aria-expanded', jQuery('#toggle-' + name).attr('aria-expanded') !== 'true');
}
};