Воспроизведение аудио не работает при отправке формы на iOS - PullRequest
1 голос
/ 06 июня 2019

У меня есть форма, которая воспроизводит аудио при отправке (Vue, но nvm).Он отлично работает везде, но не на iOS.

В iOS он работает только при нажатии на элемент кнопки, но не работает при нажатии на кнопку «возврат» на клавиатуре iOS: (

Почему iOS не доверяет отправке события, но доверяет щелчку, который работает аналогичным образом?

Любые советы? Спасибо!

У меня есть "взломанное" решение:

  1. Удалите обработчик формы onsubmit, измените тип кнопки на type="button", добавьте обработчик onclick к этой кнопке и вызовите playAudio() (клавиша «return» останется на клавиатуре, поэтомуэто нормально).

  2. Добавить onkeyup событие для ввода и вызвать playAudio() на keyCode === 13 (клавиша ввода).

Мое "хак" решение работает нормально, но это "хак": (

<form novalidate @submit.prevent="playAudio()">
  <div class="form-group">
    <input
      type="text"
      class="form-control"
      autocapitalize="off"
      autocomplete="off"
      spellcheck="false"
      autocorrect="off"
     />
  </div>

  <button type="submit" class="btn btn-block">Enter</button>
</form>

iOS (xcode simulator) ошибка при отправке формы:

NotAllowedError: Запрос не разрешенпользовательский агент или платформа в текущем контексте, возможно, потому что пользователь отказал в разрешении.

...