Spec-Zone.ru › Web APIs

MediaError: свойство message

Только для чтения свойство MediaError.message возвращает удобочитаемую строку, предоставляющую конкретные диагностические детали, относящиеся к ошибке, описанной объектом MediaError, или пустую строку ("") в случае, если диагностическая информация не может быть определена или предоставлена.

Значение

Строка, предоставляющая подробное и конкретное объяснение того, что пошло не так, и, возможно, как это можно исправить. Это не общее описание значения свойства MediaError.code, а вместо этого углубляется в детали конкретной ошибки и ее обстоятельств. Если конкретные детали недоступны, эта строка пустая.

Примеры

В этом примере создается элемент <audio>, устанавливается обработчик ошибок для него, затем пользователь может нажать кнопки, чтобы выбрать, присвоить ли элементу действительный аудиофайл или отсутствующий файл атрибуту src элемента. Обработчик ошибок выводит сообщение в окно на экране, описывающее ошибку, включая как code, так и message.

Отображаются только релевантные части кода; вы можете посмотреть полный исходный код здесь.

В примере создается элемент <audio> и пользователь может назначить либо действительный музыкальный файл, либо ссылку на файл, которого не существует. Это позволяет нам увидеть поведение обработчика событий error, который получает обработчик событий, который мы добавляем к элементу <audio>.

Обработчик ошибок выглядит так:

audioElement.onerror = () => {
  let s = "";
  const err = audioElement.error;

  switch (err.code) {
    case MediaError.MEDIA_ERR_ABORTED:
      s += "The user canceled the audio.";
      break;
    case MediaError.MEDIA_ERR_NETWORK:
      s += "A network error occurred while fetching the audio.";
      break;
    case MediaError.MEDIA_ERR_DECODE:
      s += "An error occurred while decoding the audio.";
      break;
    case MediaError.MEDIA_ERR_SRC_NOT_SUPPORTED:
      s +=
        "The audio is missing or is in a format not supported by your browser.";
      break;
    default:
      s += "An unknown error occurred.";
      break;
  }

  const message = err.message;

  if (message?.length > 0) {
    s += ` ${message}`;
  }

  displayErrorMessage(`<strong>Error ${err.code}:</strong> ${s}<br>`);
};

Этот код получает объект MediaError, описывающий ошибку, из свойства error на элементе HTMLAudioElement, представляющем аудиоплеер. Проверяется атрибут code ошибки, чтобы определить общее сообщение об ошибке для отображения, и, если message не пустое, оно добавляется, чтобы предоставить дополнительные детали. Затем полученный текст выводится в лог.

Результат

Вы можете попробовать этот пример ниже и посмотреть пример в действии вне этой страницы здесь.

Спецификации

Спецификация
HTML
# dom-mediaerror-message-dev

Совместимость с браузерами

Рабочий стол Мобильный
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на IOS Samsung Internet WebView Android
message 59 79 52 46 15 59 52 43 15 7.0 59

См. также

  • MediaError: Интерфейс, используемый для определения свойства MediaError.message
  • <audio>, <video>

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/MediaError/message

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API