Skip to content

Commit 5ef668a

Browse files
authored
Set aria-labelledby for takeover dialog (#2735)
1 parent e6754c6 commit 5ef668a

File tree

3 files changed

+8
-3
lines changed

3 files changed

+8
-3
lines changed

src/app/layouts/default/takeover-dialog/content-desktop.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ function Basic({headline, message, image, children}) {
1717
<div className="takeover-content desktop-only">
1818
<div className="text-side">
1919
<Logo />
20-
<RawHTML Tag="h1" html={headline} />
20+
<RawHTML Tag="h1" html={headline} id="takeover-headline" />
2121
<div className="message">{message}</div>
2222
{children}
2323
</div>

src/app/layouts/default/takeover-dialog/content-mobile.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ export default function MobileContent({data}) {
5555
React.useEffect(() => {
5656
document.getElementById('header').classList.add('over-mobile-dialog');
5757

58-
return () => document.getElementById('header').classList.remove('over-mobile-dialog');
58+
return () => document.getElementById('header')?.classList.remove('over-mobile-dialog');
5959
}, []);
6060

6161
return (

src/app/layouts/default/takeover-dialog/takeover-dialog-content.js

+6-1
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,13 @@ export default function TakeoverBanner({data, setDisplayed}) {
4141
}
4242

4343
data.image = data.fundraiserImage;
44+
/*
45+
takeover-headline is the id of the h1 in content-desktop
46+
aria-labelledby can reference hidden content, so even in mobile, the value in content-desktop
47+
will be used
48+
*/
4449
return (
45-
<Dialog className={cn('takeover-dialog', data.colorScheme)}>
50+
<Dialog className={cn('takeover-dialog', data.colorScheme)} aria={{labelledby: 'takeover-headline'}}>
4651
<TakeoverContextProvider contextValueParameters={{close}}>
4752
<DesktopContent data={data} />
4853
<MobileContent data={data} />

0 commit comments

Comments
 (0)