From e68a5b82d7f30c20d69aff66da7ee550016b8d0a Mon Sep 17 00:00:00 2001 From: Ajay Maurya Date: Mon, 21 Mar 2022 16:31:25 +0530 Subject: [PATCH] aria-expanded values updated based on the callbacks --- packages/navigation/src/navigation.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/navigation/src/navigation.js b/packages/navigation/src/navigation.js index 1683db3..6d58d4c 100644 --- a/packages/navigation/src/navigation.js +++ b/packages/navigation/src/navigation.js @@ -296,8 +296,10 @@ export default class Navigation { * @param {element} $submenu The submenu to open. Required. */ openSubmenu($submenu) { + const $anchor = $submenu.previousElementSibling; // Open the submenu by updating ARIA and class. $submenu.setAttribute('aria-hidden', false); + $anchor.setAttribute('aria-expanded', true); /** * Called when a submenu item is opened. @@ -305,7 +307,7 @@ export default class Navigation { * @callback onSubmenuOpen - optional. */ if (this.settings.onSubmenuOpen && typeof this.settings.onSubmenuOpen === 'function') { - this.settings.onSubmenuOpen.call(); + this.settings.onSubmenuOpen.call(this, $submenu); } } @@ -320,6 +322,7 @@ export default class Navigation { // Close the submenu by updating ARIA and class. $submenu.setAttribute('aria-hidden', true); + $anchor.setAttribute('aria-expanded', false); if ($childSubmenus) { // Close any children as well. @@ -337,7 +340,7 @@ export default class Navigation { * @callback onSubmenuClose - optional. */ if (this.settings.onSubmenuClose && typeof this.settings.onSubmenuClose === 'function') { - this.settings.onSubmenuClose.call(); + this.settings.onSubmenuClose.call(this, $submenu); } }