Фокус на элементе, когда IOS VoiceOver включен (Javascript) - PullRequest
0 голосов
/ 25 марта 2020

Я обернулся вокруг функции VoiceOver IOS. У меня есть кнопка Skip to Main Content , которая должна переместить фокус на первый фокусируемый элемент за пределами заголовка.

<button id="skip-navigation">Skip to Main Content</button>
const skipButton = document.getElementById("skip-navigation")

skipButton.onclick = () => { 
  const firstFocusable = getFirstFocusable()

  if (firstFocusable) {
    firstFocusable.focus() // this works with other screen readers (eg. Talkback, MS Narrator, etc.)
  }
}

NOTE : getFirstFocusable - это пользовательская функция, которая захватывает первый элемент, являющийся потомком main, который считается фокусируемым , и возвращает элемент.

const getFocusable = parent => parent.querySelectorAll('button, a[href], input, select, textarea, [tabindex]:not([tabindex="-1"])')[0]

Я не нашел способ сделать это, поскольку результаты продолжают показывать, как это сделать в Objective C или Swift.

Любые выводы будут с благодарностью.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...