I have a react website, and on change of page have set focus to 'h1' in useEffect so that the user can tab into page content, rather than go through the top navbar, and voiceover read this out. If there is a banner popup with role=alert, it reads that instead. This works fine on desktop, but for iPhone, Voiceover reads out the page titles instead instead of either of these. Could anyone suggest what I am doing wrong, is this expected behaviour? Thanks in advance
I can add a timeout to set focus again and this will probably interrupt the screen reader and make it announce the h1, or do same to banner, but I want to avoid adding more timeouts to my code just to work around screenreader behaviour
Buttons within a slider are not called out from voiceover