Repository: next.js
Issue: Talkback announces Object Replacement Character after Anchor element is clicked and page loads.
Labels: bug,Navigation

### Link to the code that reproduces this issue

https://github.com/lortimer/next-document-title-talkback-bug

### To Reproduce

1. Start the application with dev or build + start  (Optional, there's a deployed version on Vercel) 
2. On an Android device running Android 13, Go to Settings > Accessibility > TalkBack > Settings > Advanced Settings > Developer Settings and activate "Display speech output".
3. On that Android device open Firefox
4. Visit the app running on your local network or [the deployed version of the example repo on Vercel](https://next-document-title-talkback-bug.vercel.app/)
5. Turn on Talkback
6. Activate any of the links in the "Anchor Element" nav region
7. Watch the speech output display to see the Unicode Object Replacement Character appear when Talkback should be announcing the document title

### Current vs. Expected behavior

#### Current behavior
When I activate a link made by putting a plain anchor element `<a>` in the source code:
1. TalkBack announces "Loading"
2. The page changes
3. TalkBack may or may not start reading the document title 
4. Talkback announces something silently that is displayed as the Unicode Object Replacement Character (the letters "OBJ" inside a square made of a dashed line). If the document title was being announced, the object replacement character interrupts it. See Screenshot Below

If I activate a link made using the react `Link` element, Talkback announces the document title as expected.

![Screenshot of talkback announcing the object replacement character instead of the document title](https://github.com/vercel/next.js/assets/68086331/c672019d-d438-4003-ade3-ab068aed816d)

#### Expected behavior
1. No matter what kind of link I click, Talkback announces the document title of the new page.
1. Anything next adds to the page to be read by a screen reader should not be announced as the object replacement character

### Provide environment information

```bash
Operating System:
  Platform: linux
  Arch: x64
  Version: #202312111032~1702306143~22.04~d28ffec SMP PREEMPT_DYNAMIC Mon D
Binaries:
  Node: 18.17.1
  npm: 9.6.7
  Yarn: N/A
  pnpm: N/A
Relevant Packages:
  next: 14.1.1-canary.27 // Latest available version is detected (14.1.1-canary.27).
  eslint-config-next: N/A
  react: 18.2.0
  react-dom: 18.2.0
  typescript: 5.1.3
Next.js Config:
  output: N/A
```


### Which area(s) are affected? (Select all that apply)

Metadata (metadata, generateMetadata, next/head), Routing (next/router, next/navigation, next/link)

### Which stage(s) are affected? (Select all that apply)

next dev (local), next start (local), Vercel (Deployed)

### Additional context

All pages contain 2 nav regions. The first one contains anchor elements and activating them reproduces the issue. The second contains `Link` components which demonstrate good behavior. All pages also contain a description of the issue.

I was able to install Next as far back as 13.3.5-canary.12, and this issue is present there.

If you try to reproduce the issue in Chrome, Talkback announces e.g. "0 Percent, Progress Bar, 0 Percent, Home Page, Webview", which isn't an ideal experience, but at least reads the title. ~~It seems possible the issues is related to this progress bar, maybe specifically related to the second "0 Percent". In Firefox, it only announces "Loading" once, but in Chrome, that second "0 Percent" is read around the time the object replacement character shows up.~~ EDIT, [this seems unrelated, see my comment below](https://github.com/vercel/next.js/issues/61688#issuecomment-1932183928)